0354 - N Maxim

From Bitnami MediaWiki
Revision as of 15:41, 22 March 2023 by MiclausIoana (talk | contribs)

Sursă: [1]

Cerinţa

Se dau n numere întregi. Calculaţi cel mai mare dintre cele n numere date.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n numere întregi, separate prin spaţii.

Date de ieșire

Dacă datele introsuse sunt corecte programul va afisa "Datele introduse corespund cerinței" ,programul afișează pe ecran numărul MAX, reprezentând cel mai mare dintre cele n numere date, iar in caz contrar programul va afisa "Datele introduse nu corespund cerinței".

Restricții și precizări

  • 1 ≤ n ≤ 1.000
  • cele n numere citite vor avea cel mult 9 cifre

Exemplu 1

Date de intrare
5
7 6 9 6 8
Date de iesire
9

Exemplu 2

Date de intrare
4
1 2 3 4
Date de iesire
4

Exemplu 3

Date de intrare
3
76968635425 456 6
Date de iesire
"Datele introduse nu corespund cerinței"

Rezolvare

<syntaxhighlight lang="python" line="1">

def nrcifre(n):

   nrcif = 0
   while n != 0:
       n = n // 10
       nrcif += 1
   return nrcif

def validare_restrictii(n):

   cifre = nrcifre
   if 1 <= n <= 1000 and cifre <= 9:
       return "Datele introduse corespund cerinței"
   else:
       return "Datele introduse nu corespund cerinței"

def valoarea_maxima():

   n = int(input("Introduceți numărul de valori: "))
   maxi = None
   for i in range(n):
       try:
           x = int(input("Introduceți o valoare: "))
           if nrcifre(x) <= 9:
               if maxi is None or x > maxi:
                   maxi = x
           else:
               print("Valoarea introdusă are peste 9 cifre.")
       except ValueError:
           print("Introduceți doar numere întregi.")
   if maxi is not None:
       print("Valoarea maximă cu cel mult 9 cifre este:", maxi)

if _name_ == '_main_':

   n = int(input("Introduceți un număr: "))
   print(validare_restrictii(n))
   valoarea_maxima()

</syntaxhighlight>