Здравствуйте! Помогите пож-та разобраться с двумя задачками:
1. Составить программу для суммирования n СЛУЧАЙНЫХ Чисел с использованием всех трех видов операторов цикла. Вот мой вариант решения, но я сама ввожу N, а надо, чтобы n были случайными числами... И еще у меня много ненужных begin. Вот... Помогите подкорректировать программку! Заранее спасибо!
var i,n,S:integer;
begin
begin
write('vvedite N=');
read(n);
S:=0;
for i:=1 to n do
S:=S+i;
write('S=',S);
end;
begin
write('vvedite N=');
read(n);
S:=0;
for i:=1 downto n do
S:=S+i;
write('S=',S);
end;
begin
write('vvedite N=');
read(n);
S:=0;i:=1;
while i<=n do
S:=S+i;i:=i+1;
end;
write('S=',S);
end;
begin
write('vvedite N=');
read(n);
S:=0;i:=1;
repeat
S:=S+i;i:=i+1;
until i>n;
write('S=',S);
end;
end.
var i,n:integer;
S:real;
begin
writeln('vvedite n');
readln(n);
S:=0;
for i:=1 to n do
begin
if (n mod 2)=0 then S:=1/(exp(n*ln(2)))
else S:=-1/(exp(n*ln(2)));
S:=S+S;
end;
writeln(S:7:1);
end.
1)
uses crt;
var
n, s, i, X: Integer;
begin
clrscr;
randomize;
write('n = '); readln(n);
writeln;
s := 0;
writeln('[ For ] ');
write('Sequence: ');
for i := 1 to n do begin
X := random(20);
write(X:2, ' ');
s := s + X;
end;
writeln;
writeln('s = ', s);
writeln;
writeln('[ While ] ');
writeln('Sequence: ');
i := 1;
s := 0;
while (i <= n) do begin
X := random(20);
write(X:2, ' ');
s := s + X;
inc(i);
end;
writeln;
writeln('s = ', s);
writeln;
writeln('[ Repeat ] ');
write('Sequence: ');
i := 0;
s := 0;
repeat
inc(i);
X := random(20);
write(X:2, ' ');
s := s + X;
until i = n;
writeln;
writeln('s = ', s);
writeln;
readln;
end.
uses crt;
var
n, P, i: Integer;
s: Single;
begin
clrscr;
write('n = '); readln(n);
s := 0;
p := 1;
for i := 1 to n do begin
s := s + 1 / p;
p := p * -2;
end;
writeln('s = ', s:5:5);
readln;
end.
спасибо огромное, что откликнулись на мою просьбу и написали!!!!
3-я решается не сложнее, по такому же принципу, как и 2 - я. Попробуй сделать сама.
Спасибо большое за совет!!! Конечно попробую!