0178 - Pătrat Perfect
Cerință[edit | edit source]
Să se scrie un program care verifică dacă un număr natural citit de la tastatură este pătrat perfect.
Date de intrare[edit | edit source]
Programul citește de la tastatură numărul natural n.
Date de ieșire[edit | edit source]
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul afișează pe ecran mesajul da, dacă n este pătrat perfect, respectiv nu în caz contrar. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții și precizări[edit | edit source]
n < 2.000.000.000
Exemplul 1[edit | edit source]
- Intrare
- 25
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- da
Rezolvare[edit | edit source]
Rezolvare ver. 1[edit | edit source]
<syntaxhighlight lang="python" line="1" start="1"> import math
- Funcție pentru validarea valorii n.
def validare(n):
if n < 2000000000: return True else: return False
- Functie pentru aflarea daca numarul este patrat perfect
def patrat_perfect(n):
if math.isqrt(n) ** 2 == n: print("da") else: print("nu")
if __name__ == '__main__':
n = int(input("Introduceti numarul:")) # Citim numarul de la tastatura if validare(n): # Stabilim daca datele introduse sunt valide print("Datele de intrare corespund restricțiilor impuse.") patrat_perfect(n) # Apelam functia pentru a afla daca numarul este patrat perfect else: print("Datele de intrare nu corespund restricțiilor impuse.") # In cazul in care datele sunt invalide afisam mesajul corespunzator
</syntaxhighlight>