0943 - Sumă4: Difference between revisions

From Bitnami MediaWiki
Dragos1234 (talk | contribs)
Dragos1234 (talk | contribs)
Line 7: Line 7:


== Date de ieșire ==  
== Date de ieșire ==  
Datele de intrare corespund restrictiilor impuse, apoi pe un rand nou va afișa valoarea cerută. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse
Datele de intrare corespund restrictiilor impuse, apoi pe un rand nou va afișa valoarea cerută. În caz contrar, se va afișa mesajul: "Datele de intrare nu corespund restrictiilor impuse".


== Restricţii şi precizări ==
== Restricţii şi precizări ==

Revision as of 15:23, 26 March 2023

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

Datele de intrare corespund restrictiilor impuse, apoi pe un rand nou va afișa valoarea cerută. În caz contrar, se va afișa mesajul: "Datele de intrare nu corespund restrictiilor impuse".

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

<syntaxhighlight lang="python" line>

  1. 0943

def ultima_cifra_putere_patru(numar):

   ultimele_cifre = [0, 1, 6, 1, 6, 5, 6, 1, 6, 1] # lista cu ultimele cifre pentru fiecare numar la puterea 4
   ultima_cifra = ultimele_cifre[numar % 10] # ultima cifra a lui numar la puterea 4
   return ultima_cifra


def calculeaza_suma(n):

   suma_ultimele_cifre = 0
   for i in range(1, n+1):
       ultima_cifra_termen = ultima_cifra_putere_patru(i)
       suma_ultimele_cifre += ultima_cifra_termen
   return suma_ultimele_cifre


def afiseaza_ultima_cifra_suma(n):

   if n < 1 or n > 1000000000:
       print("Valoarea lui n trebuie sa fie intre 1 si 1.000.000.000.")
   else:
       ultima_cifra_suma = calculeaza_suma(n) % 10
       print("Ultima cifra a sumei este:", ultima_cifra_suma)


if __name__ == '__main__':

   # apelam functia afiseaza_ultima_cifra_suma cu argumentul n dat de utilizator
   n = int(input("Introduceti numarul n: "))
   afiseaza_ultima_cifra_suma(n)

</syntaxhighlight>