0007 - Maxim2: Difference between revisions

From Bitnami MediaWiki
No edit summary
 
(4 intermediate revisions by 2 users not shown)
Line 6: Line 6:


==Date de ieșire==
==Date de ieșire==
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.
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 de precizări==
==Restricții și precizări==
valoare absolută a numerelor din fişierul de intrare va fi mai '''mică''' decât 1.000.000.000
valoare absolută a numerelor din fişierul de intrare va fi mai '''mică''' decât 1.000.000.000


Line 19: Line 19:


:125
:125
;Ieșire
:Datele de intrare corespund restricțiilor impuse.


==Rezolvare==
==Rezolvare==
Line 26: Line 29:
     """Verifică dacă un număr este mai mic de 1.000.000.000."""
     """Verifică dacă un număr este mai mic de 1.000.000.000."""
     if abs(numar) >= 1000000000:
     if abs(numar) >= 1000000000:
         print(f"Numărul {numar} depășește limita maximă.")
         print("Datele de intrare nu corespund restrictiilor impuse.")
         return False
         return False
     return True
     return True


# 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
def maxim2(numar1=0, numar2=0):
if not validare_numar(numar1) or not validare_numar(numar2):
    # Citim numerele din fișierul de intrare
     exit()
    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.")


# Găsim maximul dintre cele două numere
maxim = max(numar1, numar2)


# Scriem rezultatul în fișierul de ieșire
if __name__ == '__main__':
with open("maxim.out", "w") as f:
     maxim2()
     f.write(str(maxim))
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 17:48, 22 April 2023

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>