0178 - Pătrat Perfect: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: ==Cerință== Să se scrie un program care verifică dacă un '''număr natural''' citit de la tastatură este '''pătrat perfect'''. ==Date de intrare== Programul citește de la '''tastatură''' numărul natural '''n'''. ==Date de ieșire== Programul afișează pe ecran mesajul '''da''', dacă n '''este''' pătrat perfect, respectiv '''nu''' în caz contrar. ==Restricții de precizări== '''n''' < 2.000.000.000 ==Exemplul 1== ;Intrare :25 ;Ieșire :da ==Rezolvare== =...
 
Line 8: Line 8:
Programul afișează pe ecran mesajul '''da''', dacă n '''este''' pătrat perfect, respectiv '''nu''' în caz contrar.
Programul afișează pe ecran mesajul '''da''', dacă n '''este''' pătrat perfect, respectiv '''nu''' în caz contrar.


==Restricții de precizări==
==Restricții și precizări==
'''n''' < 2.000.000.000
'''n''' < 2.000.000.000



Revision as of 19:12, 2 April 2023

Cerință

Să se scrie un program care verifică dacă un număr natural citit de la tastatură este pătrat perfect.

Date de intrare

Programul citește de la tastatură numărul natural n.

Date de ieșire

Programul afișează pe ecran mesajul da, dacă n este pătrat perfect, respectiv nu în caz contrar.

Restricții și precizări

n < 2.000.000.000

Exemplul 1

Intrare
25
Ieșire
da

Rezolvare

Rezolvare ver. 1

<syntaxhighlight lang="python" line="1" start="1"> import math


  1. Funcție pentru validarea valorii n.

def validare(n):

   if n < 2000000000:
       return True
   else:
       return False


  1. 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>