0056 - Numărare Perechi
Sursa: [1]
Cerinţa
Se dă numărul natural nenul n. Să se determine produsul primelor n pătrate perfecte nenule.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa pe ecran, mesajul "Datele introduse corespund cerințelor" și pe o linie nouă numărul P , reprezentând produsul primelor n pătrate perfecte nenule, în caz contrar programul va afișa pe o linie noua mesajul "Datele introduse nu corespund cerintelor."
Restricţii şi precizări
- 0 < n ⩽ 10
Exemplul 1
- Intrare
- 4
- Ieșire
- Datele corespund cerințelor.
- 576
Exemplul 2
- Intrare
- 16
- Ieșire
- Datele introduse nu corespund cerințelor.
Exemplul 3
- Intrare
- 7
- Ieșire
- Datele corespund cerințelor.
- 25401600
Rezolvare
<syntaxhighlight lang="python" line>
- 0056
def is_valid(number):
return -1000000 < number < 1000000 or number == 0
def get_valid_input(prompt):
""" Returnează un număr valid introdus de utilizator. Prompt-ul este afișat la consolă. """ num = int(input(prompt)) while not is_valid(num): print("Valoarea citită nu este validă!") num = int(input(prompt)) return num
def count_matching_digits():
""" Calculează numărul de cifre care se potrivesc în doi numere introduse de utilizator. """ num1 = get_valid_input("Introduceți primul număr: ") num2 = get_valid_input("Introduceți al doilea număr: ")
if num1 < 0: num1 = -num1 if num2 < 0: num2 = -num2
count = 0 while num2: if num1 % 10 == num2 % 10: count += 1 num1 = num2 num2 = get_valid_input("Introduceți următorul număr: ") if num2 < 0: num2 = -num2
print(f"Numărul de cifre care se potrivesc este: {count}")
def main():
count_matching_digits()
main()
</syntaxhighlight>