Вpascal напишите к подробные комментарии. найти наименьший номер n, для которого выполняется условие |an – an-1|< 0,1 , если последовательность an имеет вид an+1= an+ 2/an.a1=1 var i : integer; an,an1 : real; begin an: =1; for i: =2 to 1000 do begin an1: =(an+2)/an; if abs(an1-an)< 0.1 then begin writeln(i: 3,an: 10: 5,an1: 10: 5,(an1-an): 10: 5); break; end; an: =an1; end; readln; end.
i : Integer;
an,an1 : Real;
begin
an:=1; //an=1
For i:=2 To 1000 Do //цикл от 2 до 1000
Begin //начало цикла
an1:=(an+2)/an; //an1=(an+2)
If Abs(an1-an)<0.1 Then //условие "если модуль an1-an<0.1"
Begin
WriteLn(i:3,an:10:5,an1:10:5,(an1-an):10:5); //вывод нескольких переменных с контролем количества символов
Break; //выход из цикла т.к. продолжать уже нет смысла
End; //конец условия
an:=an1; //an=an1
End; //конец цикла
ReadLn; // считывание строки, чтобы прога не отключалась сразу
end.