Дано действительное число A. Требуется найти первое значение числа N, при котором сумма S=1+1/2+1/3+…+1/N превышает A. Программу составьте двумя способами: используя цикл с предусловием и цикл с постусловием. В ABC Pascal
Дано
действительное число A. Требуется найти первое значение числа N, при
котором сумма S=1+1/2+1/3+…+1/N превышает A. Программу
составьте двумя способами: используя цикл с предусловием и цикл с постусловием. В ABC Pascal
Ответ(ы) на вопрос:
var a, s: real; i: longint;
begin
readln(a);
{С предусловием}
i := 2;
s := 1;
while(s <= a) do
begin
s := s + 1 / i;
i := i + 1;
end;
writeln(i - 1);
{С постусловием}
i := 1;
s := 0;
repeat
s := s + 1 / i;
i := i + 1;
until(s > a);
writeln(i - 1);
end.
Не нашли ответ?
Похожие вопросы