3077 - Suma Prefixe: Difference between revisions
Pop Giulia (talk | contribs) No edit summary |
Pop Giulia (talk | contribs) No edit summary |
||
| Line 1: | Line 1: | ||
def calculeaza_suma_prefixe(numar, prefix=0): | def calculeaza_suma_prefixe(numar, prefix=0): | ||
if numar == 0: | if numar == 0: | ||
return prefix | return prefix | ||
suma = 0 | suma = 0 | ||
for cifra in range(1, numar % 10 + 1): | for cifra in range(1, numar % 10 + 1): | ||
suma += calculeaza_suma_prefixe(numar // 10, prefix + cifra) | suma += calculeaza_suma_prefixe(numar // 10, prefix + cifra) | ||
| Line 11: | Line 11: | ||
return suma | return suma | ||
n = int(input("Introduceți un număr natural nenul: ")) | n = int(input("Introduceți un număr natural nenul: ")) | ||
suma_prefixe = calculeaza_suma_prefixe(n) | suma_prefixe = calculeaza_suma_prefixe(n) | ||
print("Suma tuturor prefixelor distincte pentru numărul", n, "este", suma_prefixe) | print("Suma tuturor prefixelor distincte pentru numărul", n, "este", suma_prefixe) | ||
Revision as of 11:14, 1 April 2023
def calculeaza_suma_prefixe(numar, prefix=0):
if numar == 0:
return prefix
suma = 0
for cifra in range(1, numar % 10 + 1):
suma += calculeaza_suma_prefixe(numar // 10, prefix + cifra)
return suma
n = int(input("Introduceți un număr natural nenul: "))
suma_prefixe = calculeaza_suma_prefixe(n)
print("Suma tuturor prefixelor distincte pentru numărul", n, "este", suma_prefixe)