Вывести итерацию в цикле - Pascal ABC
Формулировка задачи:
Здравствуйте, заадание такое: дан отрезок [a,b] с шагом h. Сделать тремя способами: с параметром, предусловием и постусловием. Для расчетов принять а=-2, b=2, h=0.1; Я считаю первый способ. Что я делаю не так?
Листинг программы
- Program lab_3;
- var
- b,x,a:integer;
- h,y,eps,i:real;
- Begin
- eps:=0.001;
- a:=-2;
- h:=0.1;
- x:=a;
- b:= 2;
- writeln('Первый способ:');
- For i:=a To b do
- begin
- y:=tan(x)/(ln(x)-1);
- i:=x+h;
- writeln('y: ',y);
- End;
- End.
Решение задачи: «Вывести итерацию в цикле»
textual
Листинг программы
- var a,b,h,x,y:real;
- n,i:integer;
- Begin
- a:=1;//нужно больше 0, ln
- h:=0.1;
- b:=3;
- writeln('Первый способ:');
- n:=round((b-a)/h);
- for i:=0 to n do
- begin
- x:=a+h*i;
- y:=tan(x)/(ln(x)-1);//видимо это АВС.net
- writeln('x=',x:4:1,' y: ',y:6:3);
- end;
- end.
Объяснение кода листинга программы
- Переменные объявлены: a, b, h, x, y - real; n, i - integer.
- Значения переменных заданы: a := 1, b := 3, h := 0.1.
- Выводится сообщение 'Первый способ:'.
- Вычисляется значение n как округленное частное (b - a) / h.
- Запускается цикл for i := 0 до n.
- В каждой итерации цикла вычисляются значения x как a + h * i и y как tan(x) / (ln(x) - 1).
- Выводится значение x и y для каждой итерации цикла.
- Цикл завершается.
- Код завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д