2708 - Verif Paritate

From Bitnami MediaWiki

Cerință

Se citesc n numere naturale. Determinați pentru fiecare dintre ele dacă este par sau impar.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n numere naturale.

Date de ieșire

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." Programul va afișa pe ecran n valori 0 sau 1, separate prin spații. Dacă numărul corespunzător este par se va afișa 0, iar dacă este impar se va afișa 1. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții de precizări

  • 1 ⩽ n ⩽  1000
  • se recomandă utilizarea operațiilor pe biți
  • cele n numere citite se pot reprezenta pe 64 de biți, fără semn;

Exemplul 1

Intrare
5
1 2 3 4 5
Ieșire
Datele introduse corespund restricțiilor impuse.
1 0 1 0 1

Exemplul 2

Intrare
4
4 10 7 0
Ieșire
Datele introduse corespund restricțiilor impuse.
0 1 1 0

Rezolvare ver. 1

<syntaxhighlight lang="python" line="1" start="1"> def validare(n, numar):

   return n.isdigit() and 1 <= int(n) <= 1000


def verifparitate(numar):

   return numar % 2 == 0  # determinăm dacă numărul este par
   for i in range(n):
       if verifparitate(numar):
           print("0", end=" ")  # afișăm dacă numărul este par
       else:
           print("1", end=" ")  # afișăm dacă numărul nu este par


if __name__ == "__main__":

   numar = int(input("Introduceți numărul: "))  # citim numărul n  de la tastatură
   n = int(input("Introduceți numărul de numere: "))  # citim numărul de numere de la tastatură

if validare(n, numar):

   n = int(n)
   numar = int(numar)
   print("Datele introduse corespund restricțiilor impuse.")
   verifparitate(numar, n)

else:

   print("Datele introduse nu corespund restricțiilor impuse.")

</syntaxhighlight>