0943 - Sumă4: Diferență între versiuni
De la Universitas MediaWiki
Linia 27: | Linia 27: | ||
; Ieșire | ; Ieșire | ||
: Valoarea lui '''n''' trebuie sa fie intre '''1 si 1.000.000.000'''. | : Valoarea lui '''n''' trebuie sa fie intre '''1 si 1.000.000.000'''. | ||
<br> | <br> | ||
Versiunea de la data 25 martie 2023 15:14
Sursa: [1]
Cerinţa
Se dă n un număr natural nenul. Să se afle ultima cifră a sumei: S=1^4 + 2^4 + 3^4 + ... + n^4.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Acest program calculează ultima cifră a sumei valorilor la puterea a patra a numerelor naturale de la 1 la n și o afișează la consolă.
Dacă valoarea introdusă de utilizator pentru n este în afara intervalului [1, 1.000.000.000], se va afișa un mesaj de eroare. În caz contrar, se va afișa ultima cifră a sumei calculată prin apelarea funcției afiseaza_ultima_cifra_suma(n).
Restricţii şi precizări
- 1 ⩽ n ⩽ 1.000.000.000
Exemplul 1
- Intrare
- Introduceti numarul n: 4
- Ieșire
- Ultima cifra a sumei este: 4
Exemplul 2
- Intrare
- Introduceti numarul n: 0
- Ieșire
- Valoarea lui n trebuie sa fie intre 1 si 1.000.000.000.
Rezolvare
#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)