3275 - Nr Sum Cif Max
Cerință
Se dau 3 numere naturale, fiecare având câte două cifre. Afișați-le pe acelea care au suma cifrelor maximă.
Date de intrare
Programul citește de la tastatură cele trei numere, separate prin spații.
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va afișa pe ecran, separate prin câte un spațiu, numerele care au suma cifrelor maximă. Dacă sunt mai multe, acestea se vor afișa în ordinea în care au fost introduse. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții și precizări
- se garantează că numerele introduse sunt de două cifre;
Exemplul 1
- Intrare
- 17 22 26
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 17 26
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1"> def validare(numar1, numar2, numar3):
# Convertim argumentele in numere intregi. numar1 = int(numar1) numar2 = int(numar2) numar3 = int(numar3) # Verificam daca fiecare numar se afla intre 10 si 99. if 9 < numar1 < 100 and 9 < numar2 < 100 and 9 < numar3 < 100: return True return False
def numere_cu_suma_maxima(numar1, numar2, numar3):
# Calculam suma cifrelor fiecarui numar. suma1 = sum(int(c) for c in str(numar1)) suma2 = sum(int(c) for c in str(numar2)) suma3 = sum(int(c) for c in str(numar3))
# Determinam suma maxima dintre cele trei numere. suma_maxima = max(suma1, suma2, suma3)
# Initializam o lista goala pentru a adauga numerele cu suma maxima. numere = [] if suma1 == suma_maxima: numere.append(numar1) if suma2 == suma_maxima: numere.append(numar2) if suma3 == suma_maxima: numere.append(numar3)
return numere
if __name__ == "__main__":
# Citim cele trei numere de la tastatura. numar1, numar2, numar3 = input("Introduceti cele 3 numere separate prin spatiu: ").split() # Calculam numerele cu suma maxima. numere = numere_cu_suma_maxima(numar1, numar2, numar3) # Verificam daca cele trei numere respecta conditiile impuse. if validare(numar1, numar2, numar3): print("Datele de intrare corespund restricțiilor impuse.") # Afisam numerele cu suma maxima, separate prin spatiu. print(*numere) else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>