CURS ONLINE INTERACTIV

Python 3

PENTRU ÎNCEPĂTORI

Proiect susținut de Uniunea Profesorilor de Informatică din România
PROBLEME REZOLVATE
PAG. 3 / 4
Instrucțiunea for
Acasă >>> Lecții online, limbajul Python 3
CERINȚĂ

Se citește un număr natural n. Să se calculeze suma:

S = 1 + 1·2 + 1·2·3 + ... 1·2·...·n

REZOLVARE

Ce avem de făcut? Observăm că avem n paşi. La pasul i se adună valorea 1·2·...·i, iar i este cuprins între 1 şi n.

Pasul 1. Se adună 1
Pasul 2. Se adună 1·2
.......................
Pasul n. Se adună 1·2·3·...·n

Dacă la problemele anterioare valoarea care se adună se obţine uşor, aici este puţin mai complicat. De ce? Pentru că şi ea trebuie calculată. Cum o calculăm? Folosim un nou ciclu? În nici un caz. Se poate mai simplu.

Observăm faptul că singura diferenţă dintre valorile care se adună la pasul i şi pasul i+1 este că cea adunată la pasul i+1 se obţine înmulţind cu i+1 valoarea adunată la pasul i.

Exemplu. La pasul 2 se adună 1·2. La pasul 3 se adună 1·2·3, adică (1·2)·3.

Să notăm cu p valoarea care se adună la fiecare pas. Iniţial p este 1. La pasul i+1, înainte de a fi adunată, valoarea p se înmulţeşte cu i+1. Să urmărim programul:
Editor - for_ex3.py
       
Rezultatul în consolă done
DETALII

Iniţial, s=0 și p=1.

Pasul 1. p:=p*1; p=1*1=1; s:=s+p; s=0+1=1;
Pasul 2. p:=p*2; p=1*2=2; s:=s+p; s=1+2=3;
Pasul 3. p:=p*3; p=2*3=6; s:=s+p; s=3+6=9;
...
Analizează problema rezolvată,
apoi avansează la pagina următoare.
Cărțile editurii noastre
O parte dintre manualele și culegerile de probleme se găsește și [în format electronic] securizat sub formă de fișier *.pdf.
 

"O cameră fără cărţi este ca un corp fără suflet." (G. K. Chesterton)

Ultimele noutăți
[vezi lista completă a cărților]
 home   list  LECȚII   perm_identity   arrow_upward