1565 - N Zero
Sursa: [1]
Cerinţa
Se dă un număr n. Afișați numărul n * 10a.
Date de intrare
Programul citește de la tastatură numărul n, apoi numărul a.
Date de ieșire
Programul va afișa pe ecran numărul p, acesta fiind n * 10a.
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele sunt introduse corect.", apoi pe un rând nou afișează numărul n * 10a.
În caz contrar, se va afișa pe ecran: "Datele nu corespund restricțiilor impuse."
Restricţii şi precizări
1 ≤ n ≤ 1000
0 ≤ a ≤ 5
Exemplul 1
- Datele de intrare
- Introduceti n:
- 5
- Introduceti a:
- 4
- Datele de ieșire
- Datele sunt introduse corect.
- 50000
Rezolvare
<syntaxhighlight lang="python" line>
- 1565
def get_input():
n = int(input("Introduceti n: ")) a = int(input("Introduceti a: ")) return n, a
def calculate_p(n, a):
if 1 <= n <= 1000 and 0 <= a <= 5: p = n * (10 ** a) return p else: return None
def display_result(p):
if p: print("Datele sunt introduse corect.") print(p) else: print("Datele nu corespund restricțiilor impuse.")
if __name__ == '__main__':
n, a = get_input() p = calculate_p(n, a) display_result(p)
</syntaxhighlight>
Explicatie cod:
Codul de mai sus definește trei funcții și o secțiune de cod care le utilizează.
Funcția get_input() cere utilizatorului să introducă două numere, n și a, și le întoarce sub forma unei perechi (n, a).
Funcția calculate_p(n, a) calculează valoarea lui p, care este produsul dintre n și 10 la puterea lui a. Această funcție verifică dacă n se află între 1 și 1000 și dacă a se află între 0 și 5. Dacă aceste condiții sunt îndeplinite, funcția calculează și returnează valoarea lui p. În caz contrar, funcția returnează None.
Funcția display_result(p) afișează valoarea lui p dacă acesta nu este None, altfel afișează un mesaj de eroare.
În secțiunea if __name__ == '__main__': se apelează funcțiile get_input(), calculate_p(n, a) și display_result(p) pentru a obține datele de intrare de la utilizator, a calcula valoarea lui p și a afișa rezultatul. Această secțiune de cod este executată numai dacă acest script este rulat direct, și nu este importat ca modul în altă parte a codului.