1565 - N Zero: Diferență între versiuni

De la Universitas MediaWiki
Linia 27: Linia 27:
== Rezolvare ==  
== Rezolvare ==  
<syntaxhighlight lang="python" line>
<syntaxhighlight lang="python" line>
#4273
#1565
def patrate_perfecte(n):
def get_input():
     patrate = []
     n = int(input("Introduceti n: "))
    i = 1
    a = int(input("Introduceti a: "))
    while len(patrate) < n:
     return n, a
        patrat = i * i
        patrate.append(patrat)
        i += 1
     return patrate




def calculeaza(numbers):
def calculate_p(n, a):
     product = 1
     if 1 <= n <= 1000 and 0 <= a <= 5:
    for number in numbers:
         p = n * (10 ** a)
         product *= number
        return p
     return product
     else:
        return None




def validare_numar(n):
def display_result(p):
     if n < 1 or n > 10:
     if p:
         return False
         print(p)
     return True
     else:
        print("n trebuie sa fie intre 1 si 1000, iar a trebuie sa fie intre 0 si 5.")




if __name__ == '__main__':
if __name__ == '__main__':
     n = int(input("Introduceți numărul n: "))
     n, a = get_input()
     if not validare_numar(n):
    p = calculate_p(n, a)
        print("Datele introduse nu corespund cerintelor.")
     display_result(p)
    else:
</syntaxhighlight>
        squares = patrate_perfecte(n)
 
        product = calculeaza(squares)
'''Explicatie cod:'''
        print("Datele introduse corespund cerintelor.")
 
        print(product)
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.


</syntaxhighlight>
Î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.

Versiunea de la data 3 aprilie 2023 12:43

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, programul va rula.

În cazul în care datele nu respectă restricțiile, 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

Intrare
5 4
Ieșire
50000


Rezolvare

#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(p)
    else:
        print("n trebuie sa fie intre 1 si 1000, iar a trebuie sa fie intre 0 si 5.")


if __name__ == '__main__':
    n, a = get_input()
    p = calculate_p(n, a)
    display_result(p)

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.