Масала 3.
Қуйидаги ифодани ҳисоблаш учун тўрт турда дастур ёзинг
1+2!+3!+...+N!
1. Параметрсиз процедура ёрдамидаги дастур.
program parametrsiz_prosedura;
var
p,s,n,m,i:integer;
procedure faktor;
begin
p:=1; for i:=1 to m do p:=p*i;
end;
begin
writeln(‘n ни киритинг); read(n);
s:=0;
for m:=1 to n do begin faktor; s:=s+p; end;
writeln(‘жавоб=,s);
end.
2. Ўзгарувчи параметрли процедура ёрдамидаги дастур.
program Ozgar_param;
var
p,s,n,m:integer;
procedure faktor(var p1:integer);
var
i:byte;
begin
p1:=1; for i:=1 to m do p1:=p1*i;
end;
begin
writeln(‘n); readln(n);
s:=0;
for m:=1 to n do begin faktor(p); s:=s+p; end;
writeln(‘жавоб=,s);
end.
3. Киймат параметрли процедура ёрдамидаги дастур.
program qiymat_param;
var
p,s,n,k:integer;
procedure faktor(m:integer);
var
i;byte;
begin
p:=1; for i:=1 to m do p:=p*i;
end;
begin
writeln(‘n ни киритинг’); read(n);
s:=0;
for k:=1 to n do begin faktor(k); s:=s+p; end;
writeln(‘жавоб',s);
end.
4. Ўзгарувчи ва қиймат параметрли процедура ёрдамидаги дастур.
program Ozgar_qiymat;
var
p1,s,n,k:integer;
procedure faktor(var p:integer; m:integer);
var
i:byte;
begin
p:=1; for i:=1 to m do p:=p*i;
end;
begin
writeln(‘n ни киритинг'); read(n);
s:=0;
for k:=1 to n do begin faktor(p1,k); s:=s+p1; end;
writeln(‘жавоб' ,s);
еnd.
Do'stlaringiz bilan baham: |