0338 - Expresie5: Difference between revisions

From Bitnami MediaWiki
Dragos1234 (talk | contribs)
Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/338/expresie5] == Cerinţa == Să se scrie un program care citește numărul natural '''n''' și determină suma '''S=1^1+2^2+ ... + n^n'''. == Date de intrare == Programul citește de la tastatură numărul '''n'''. == Date de ieșire == Programul afișează pe ecran mesajul Rezultatul este S, unde S reprezintă suma calculată, în caz contrar programul va afișa "Datele introduse nu corespund cerintelor." == Restricţii şi preciză...
 
Dragos1234 (talk | contribs)
Line 5: Line 5:
Programul citește de la tastatură numărul '''n'''.
Programul citește de la tastatură numărul '''n'''.
== Date de ieșire ==  
== Date de ieșire ==  
Programul afișează pe ecran mesajul Rezultatul este S, unde S reprezintă suma calculată, în caz contrar programul va afișa "Datele introduse nu corespund cerintelor."
Programul afișează pe ecran mesajul Rezultatul este '''S''', unde '''S''' reprezintă suma calculată, în caz contrar programul va afișa "Datele introduse nu corespund cerintelor."


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

Revision as of 14:14, 18 March 2023

Sursa: [1]

Cerinţa

Să se scrie un program care citește numărul natural n și determină suma S=1^1+2^2+ ... + n^n.

Date de intrare

Programul citește de la tastatură numărul n.

Date de ieșire

Programul afișează pe ecran mesajul Rezultatul este S, unde S reprezintă suma calculată, în caz contrar programul va afișa "Datele introduse nu corespund cerintelor."

Restricţii şi precizări

  • 0 < n ⩽ 15

Exemplul 1

Intrare
4
Ieșire
Rezultatul este 288


Exemplul 2

Intrare
16
Ieșire
Datele introduse nu corespund cerințelor.


Exemplul 3

Intrare
7
Ieșire
Rezultatul este 873612


Rezolvare

<syntaxhighlight lang="python" line>

  1. 0338

def calculeaza_suma_puterilor(n):

   suma = 0
   for i in range(1, n+1):
       suma += i**i
   return suma

def validare_numar(n):

   if n <= 0 or n > 15:
       print("Datele introduse nu corespund cerintelor.")
       return False
   else:
       return True

if __name__ == '__main__':

   n = int(input("Introduceti numarul n: "))
   if validare_numar(n):
       S = calculeaza_suma_puterilor(n)
       print("Rezultatul este", S)


</syntaxhighlight>