0007 - Maxim2: Difference between revisions

From Bitnami MediaWiki
 
(One intermediate revision by the same user not shown)
Line 29: 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]

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

Date de intrare[edit]

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

Date de ieșire[edit]

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]

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

Exemplul 1[edit]

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

Rezolvare[edit]

Rezolvare ver. 1[edit]

<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>