1565 - N Zero: Difference between revisions
Sinn Erich (talk | contribs) |
Sinn Erich (talk | contribs) |
||
Line 32: | Line 32: | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line> | ||
#1565 | #1565 | ||
def | def validate_input(n, a): | ||
if 1 <= n <= 1000 and 0 <= a <= 5: | if 1 <= n <= 1000 and 0 <= a <= 5: | ||
return True | |||
return | |||
else: | else: | ||
return | return False | ||
def calculate_p(n, a): | |||
return n * (10 ** a) | |||
def display_result(p): | def display_result(p): | ||
if p: | if p is not None: | ||
print("Datele sunt introduse corect.") | print("Datele sunt introduse corect.") | ||
print(p) | print(p) | ||
Line 53: | Line 48: | ||
print("Datele nu corespund restricțiilor impuse.") | print("Datele nu corespund restricțiilor impuse.") | ||
if __name__ == '__main__': | |||
n = int(input("Introduceti n: ")) | |||
a = int(input("Introduceti a: ")) | |||
if validate_input(n, a): | |||
p = calculate_p(n, a) | |||
display_result(p) | |||
else: | |||
print("Datele nu corespund restricțiilor impuse.") | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 23:35, 27 April 2023
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 validate_input(n, a):
if 1 <= n <= 1000 and 0 <= a <= 5: return True else: return False
def calculate_p(n, a):
return n * (10 ** a)
def display_result(p):
if p is not None: print("Datele sunt introduse corect.") print(p) else: print("Datele nu corespund restricțiilor impuse.")
if __name__ == '__main__':
n = int(input("Introduceti n: ")) a = int(input("Introduceti a: "))
if validate_input(n, a): p = calculate_p(n, a) display_result(p) else: print("Datele nu corespund restricțiilor impuse.")
</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.