0007 - Maxim2

From Bitnami MediaWiki

Cerință[edit | edit source]

Se dau 2 numere intregi. Calculaţi maximul celor 2 numere date.

Date de intrare[edit | edit source]

Fişierul de intrare maxim.in conţine pe prima linie 2 numere întregi separate prin spaţii.

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.". Fişierul de ieşire maxim.out va conţine pe prima linie numărul max, reprezentând maximul numerelor din fişierul de intrare. Î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]

valoare absolută a numerelor din fişierul de intrare va fi mai mică decât 1.000.000.000

Exemplul 1[edit | edit source]

maxim.in
125 68
maxim.out
125
Ieșire
Datele de intrare corespund restricțiilor impuse.

Rezolvare[edit | edit source]

Rezolvare ver. 1[edit | edit source]

<syntaxhighlight lang="python" line="1" start="1"> def validare_numar(numar):

   """Verifică dacă un număr este mai mic de 1.000.000.000."""
   if abs(numar) >= 1000000000:
       print("Datele de intrare nu corespund restrictiilor impuse.")
       return False
   return True


def maxim2(numar1=0, numar2=0):

   # Citim numerele din fișierul de intrare
   with open("maxim.in", "r") as f:
       numar1, numar2 = map(int, f.readline().strip().split())
   # Verificăm dacă numerele sunt valide
   if not validare_numar(numar1) or not validare_numar(numar2):
       exit()
   # Găsim maximul dintre cele două numere
   maxim = max(numar1, numar2)
   # Scriem rezultatul în fișierul de ieșire
   with open("maxim.out", "w") as f:
       f.write(str(maxim))
   print("Datele de intrare corespund restrictiilor impuse.")


if __name__ == '__main__':

   maxim2()

</syntaxhighlight>