Переписать код из Turbo Pascal в Pascal ABC - Pascal ABC (248136)

Узнай цену своей работы

Формулировка задачи:

Решение задачи: «Переписать код из Turbo Pascal в Pascal ABC»

textual
Листинг программы
uses graphABC;
const m=50;
var i,j,s1,s2,c1,c2: integer;
    z,x,y,x1,y1,x2,y2,h: real;
    t:array [1..2,0..640] of integer;
procedure graf(x,y: real);
begin
repeat
x2:=x;
y2:=y;
x1:=x+h*(X-X*Y);
y1:=y+h*(-y+X*Y);
x:=x1;
y:=y1;
setpixel(s1+round(x*m),s2-round(y*m),clBlue);
until (abs(x-x2)<0.0001) and (abs(y-y2)<0.0001);
end;
begin
s1:=windowwidth div 2;
s2:=windowheight div 2;
line(0,s2,windowwidth,s2);
line(s1,0,s1,windowheight);
h:=0.01;
graf(2,1);
end.

Объяснение кода листинга программы

  1. Объявлены переменные: i, j, s1, s2, c1, c2, z, x, y, x1, y1, x2, y2, h, t, and t — массив из 2 строк по 640 ячеек.
  2. Вызована процедура graf с аргументами x, y.
  3. В цикле repeat, пока не выполнится условие (abs(x-x2)<0.0001) and (abs(y-y2)<0.0001), выполняется следующая последовательность действий: a. x2 и y2 принимают значения x и y соответственно. b. x1 и y1 вычисляются как x + h(X-XY) и y + h(-y+XY) соответственно. c. x и y заменяются на x1 и y1. d. Вызывается функция setpixel для установки пикселя (s1+round(xm),s2-round(ym)) цветом clBlue.
  4. После выполнения цикла repeat вычисляются значения s1 и s2, которые используются для рисования горизонтальной и вертикальной линий на окне.
  5. Задается значение h равным 0,01.
  6. Вызывается функция graf с аргументами 2 и 1.
  7. Код завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы