0106 - Minim3
Sursa: 0106 - Minim3
Cerinţa[edit | edit source]
Se dau 3 numere întregi numar1, numar2 și numar3. Calculaţi minimul celor 3 numere date.
Date de intrare[edit | edit source]
Programul citește de la tastatură numerele numar1, numar2 și numar3, separate prin câte un spațiu.
Date de ieșire[edit | edit source]
Programul va afişa pe ecran cel mai mic dintre numerele citite.
Restricţii şi precizări[edit | edit source]
- numar1, numar2, numar3 ∈ ℤ
- abs(numar1), abs(numar2), abs(numar3) < 1.000.000.000
- abs - valoarea absolută
Exemplu[edit | edit source]
- Intrare
- 125 68 200
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 68
- Intrare
- abc 63.5 20
- Ieșire
- Datele introduse nu corespund restricțiilor impuse.
- Intrare
- -25 20 1000000001
- Ieșire
- Datele introduse nu corespund restricțiilor impuse.
Rezolvare[edit | edit source]
Rezolvare ver. 1[edit | edit source]
<syntaxhighlight lang="python" line>
- 0106 - Minim 3
def validare_date_numere(numar1: str, numar2: str, numar3: str) -> bool:
try: int(numar1) int(numar2) int(numar3) return True except ValueError: return False
def validare_valori(numar1: int, numar2: int, numar3: int) -> bool:
if len(str(abs(numar1))) < 10 and len(str(abs(numar2))) < 10 and len(str(abs(numar3))) < 10: return True else: return False
def minim3(*args) -> int:
return min(args)
if __name__ == "__main__":
linie1 = input() linie1 = linie1.split(" ") numar1, numar2, numar3 = linie1[0], linie1[1], linie1[2] if validare_date_numere(numar1, numar2, numar3): numar1, numar2, numar3 = int(numar1), int(numar2), int(numar3) if validare_valori(numar1, numar2, numar3): print("Datele de intrare corespund restricțiilor impuse.") print(minim3(numar1, numar2, numar3)) else: print("Datele de intrare nu corespund restricțiilor impuse.") else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>
Rezolvare ver. 2[edit | edit source]
<syntaxhighlight lang="python" line>
- 0106 - Minim 3
def validare_date_numere(numar1: str, numar2: str, numar3: str) -> bool:
try: int(numar1) int(numar2) int(numar3) return True except ValueError: return False
def validare_valori(numar1: int, numar2: int, numar3: int) -> bool:
if len(str(abs(numar1))) < 10 and len(str(abs(numar2))) < 10 and len(str(abs(numar3))) < 10: return True else: return False
def minim3(numar1: int, numar2: int, numar3: int) -> int:
minim: int = numar1
if numar2 < minim: minim = numar2 if numar3 < minim: minim = numar3 return minim
if __name__ == "__main__":
linie1 = input() linie1 = linie1.split(" ") numar1, numar2, numar3 = linie1[0], linie1[1], linie1[2] if validare_date_numere(numar1, numar2, numar3): numar1, numar2, numar3 = int(numar1), int(numar2), int(numar3) if validare_valori(numar1, numar2, numar3): print("Datele de intrare corespund restricțiilor impuse.") print(minim3(numar1, numar2, numar3)) else: print("Datele de intrare nu corespund restricțiilor impuse.") else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>