1581 - Max Suma

From Bitnami MediaWiki

Sursa: [1]

Cerinţa

Se dau n şiruri, fiecare şir fiind format din m numere naturale mai mici decat 500. Să se determine cel mai mare număr din fiecare şir. Să se determine suma numerelor fiecărui şir.

Date de intrare

Programul citeste pe rând n, m şi restul numerelor.

Date de ieșire

Se vor scrie pe fiecare rând pentru fiecare şir cel mai mare număr din şir şi suma.

Restricţii şi precizări

1 ≤ n ≤ 100

1 ≤ m ≤ 50

Exemplul 1

Intrare
4
Ieșire
Datele corespund cerințelor.
576



Rezolvare

<syntaxhighlight lang="python" line>

  1. 4273

def patrate_perfecte(n):

   patrate = []
   i = 1
   while len(patrate) < n:
       patrat = i * i
       patrate.append(patrat)
       i += 1
   return patrate


def calculeaza(numbers):

   product = 1
   for number in numbers:
       product *= number
   return product


def validare_numar(n):

   if n < 1 or n > 10:
       return False
   return True


if __name__ == '__main__':

   n = int(input("Introduceți numărul n: "))
   if not validare_numar(n):
       print("Datele introduse nu corespund cerintelor.")
   else:
       squares = patrate_perfecte(n)
       product = calculeaza(squares)
       print("Datele introduse corespund cerintelor.")
       print(product)


</syntaxhighlight>