0056 - Numărare Perechi
De la Universitas MediaWiki
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
#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()