8-Mile RD
Veoma poznat
- Poruka
- 10.353
Ja mislim da je drugacije. Da se umesto for petlje od 1 do n treba ici od 1 dok taj clan x^n/n! ne postane manji od zadatog broja. Takodje, prilicno je neefikasno tako racunati stepen i faktorijel u ovakvom zadatku.
Kod:program suma; var x,min,step,suma:real; n,fakt:integer; begin write('Unesite x: '); readln(x); write('Unesite minimalnu vrednost clana: '); readln(min); n:=0; step:=1; fakt:=1; suma:=0; while step/fakt>=min do suma:=suma+step/fakt; inc(n); step:=step*x; fakt:=fakt*n; end; writeln('Trazena suma je: ',suma:0:5); end.
Evo efikasniji nacin, mada nema potrebe, vidis da je srednjoskolac.
Stepen:
Kod:
function stepen(broj:integer; st:byte):integer;
begin
if ((broj=0) or (broj=1)) then stepen:=broj
else
begin
if (st=0) then stepen:=1
else if (st=1) then stepen:=broj
else
begin
stepen:=broj*stepen(broj,st-1);
end;
end;
end;
Faktorijel:
Kod:
function fact(broj:byte):integer;
var f:integer;
begin
if (broj=0) or (broj=1) then fact:=1
else
fact:=broj*fact(broj-1);
end;
Poslednja izmena: