0793 - Sum Prod
De la Universitas MediaWiki
Cerință
Se dau trei numere naturale a b c. Să se determine cea mai mare valoare care se poate obține prin înmulțirea a două dintre numere și adunarea rezultatului cu al treilea.
Date de intrare
Programul citește de la tastatură numerele a b c.
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul afișează pe ecran numărul R, reprezentând maximul determinat.În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții și precizări
- Numerele a, b, c sunt incluse intre 0 si 1000, inclusiv.
Exemplul 1
- Intrare
- 3 2 4
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 14
Rezolvare
Rezolvare ver. 1
def validare(a, b, c): # Punem conditia ca numerele sa fie incluse intre 0 si 1000, inclusiv
if 0 <= a <= 1000 and 0 <= b <= 1000 and 0 <= c <= 1000:
return True
return False
def sum_prod(a, b, c):
# Determinăm produsul maxim dintre două dintre cele trei numere date
max_prod = max(a * b, b * c, c * a)
# Adunăm produsul maxim la cel de-al treilea număr
R = max_prod + min(a, b, c)
return R
if __name__ == "__main__":
a, b, c = map(int, input().split()) # Citim numerele de la tastatura
if validare(a, b, c): # Aplicam functia de validare pe numerele introduse
print("Datele de intrare corespund restricțiilor impuse.")
print(sum_prod(a, b, c)) # Apelam functia sum_prod ca sa aflam rezultatul
else:
print("Datele de intrare nu corespund restricțiilor impuse.")