0045 - Verif Prim: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: == Cerinţa == Să se scrie un program care citește de la tastatură un număr natural '''n''' și verifică dacă este prim. == Date de intrare == Programul citește de la tastatură numărul '''n'''. == Date de ieşire == Programul afișează pe ecran mesajul '''DA''', dacă '''n''' este număr prim, respectiv '''NU''' în caz contrar. == Restricții și precizări == * '''n ∈ Ν''' * '''1 ⩽ n ⩽ 1.000.000.000''' * un număr natural este '''prim''' dacă are...
 
No edit summary
Line 13: Line 13:
: 17
: 17
; Ieșire
; Ieșire
: Datele introduse corespund restricțiilor impuse.
: Datele de intrare corespund restricțiilor impuse.
: DA
: DA
== Exemplu2 ==
== Exemplu2 ==
Line 19: Line 19:
: 14
: 14
; Ieșire
; Ieșire
: Datele introduse corespund restricțiilor impuse.
: Datele de intrare corespund restricțiilor impuse.
: NU
: NU
== Rezolvare ==
== Rezolvare ==

Revision as of 10:37, 11 April 2023

Cerinţa

Să se scrie un program care citește de la tastatură un număr natural n și verifică dacă este prim.

Date de intrare

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

Date de ieşire

Programul afișează pe ecran mesajul DA, dacă n este număr prim, respectiv NU în caz contrar.

Restricții și precizări

  • n ∈ Ν
  • 1 ⩽ n ⩽ 1.000.000.000
  • un număr natural este prim dacă are exact doi divizori distincți: 1 și el însuși.

Exemplu1

Intrare
17
Ieșire
Datele de intrare corespund restricțiilor impuse.
DA

Exemplu2

Intrare
14
Ieșire
Datele de intrare corespund restricțiilor impuse.
NU

Rezolvare

<syntaxhighlight lang="python" line> def validare_date(n):

   flag = False
   if 0 <= int(n) < 1_000_000_000:
       flag = True
   return flag


def verif_prim(n):

   if n <= 1:
       print("NU")
   else:
       # Verificăm dacă există un divizor între 2 și rădăcina pătrată a lui n
       for i in range(2, int(n ** 0.5) + 1):
           if n % i == 0:
               print("NU")
               break
       else:
           print("DA")


if __name__ == '__main__':

   n = int(input())
   if validare_date(n):
       print("\nDatele de intrare corespund restrictiilor impuse.\n")
       verif_prim(n)
   else:
       print("Datele de intrare nu corespund restrictiilor impuse.")

</syntaxhighlight>