Создать класс Point - Pascal ABC
Формулировка задачи:
Создать класс Point, разработав следующие элементы класса:
a. Поля:
• int x, y;
b. Конструкторы, позволяющие создать экземпляр класса:
• с нулевыми координатами;
• с заданными координатами.
c. Методы, позволяющие:
• вывести координаты точки на экран;
• рассчитать расстояние от начала координат до точки;
• переместить точку на плоскости на вектор (a, b).
d. Свойства:
• получить-установить координаты точки (доступное для чтений и записи);
• позволяющие умножить координаты точки на скаляр (доступное только для записи).
Решение задачи: «Создать класс Point»
textual
Листинг программы
program pr; type point = class private x, y: integer; public constructor create(); overload; begin x := 0; y := 0; end; constructor create(ax: integer; ay: integer); overload; begin x := ax; y := ay; end; procedure show(); virtual; begin writeln('( ', x, ',', y, ' )'); end; procedure ras(x, y: integer; var r: real); begin r := sqrt((x * x) + (y * y)); end; procedure ve(x, y: integer; a, b: integer); var n, m: integer; begin n := x + a; m := y + b; write('Точка на векторе (', a, ',', b, ') :( ', n, ',', m, ' )') end; end; var p: point; a, b: integer; g: real; begin p := new point(); p.show; p := new point(1, 3); p.show; p.ras(1, 3, g); writeln('Расстояние: ', g); p.ve(1, 3, 2, 2); end.
Объяснение кода листинга программы
- В программе определен класс
Point
с двумя конструкторамиcreate
иcreate(ax: integer; ay: integer)
. Конструкторcreate
устанавливает значения переменныхx
иy
в 0, а конструкторcreate(ax: integer; ay: integer)
устанавливает значения переменныхx
иy
вax
иay
соответственно. - В классе
Point
определен методshow
, который выводит координаты точки в виде(x, y)
. - В классе
Point
определен методras
, который вычисляет расстояние от точки до начала координат по формулеsqrt((x * x) + (y * y))
. Этот метод вызывается в строкеp.ras(1, 3, g);
с результатом вычисления расстояния сохраняемым в переменнойg
. - В классе
Point
определен методve
, который выводит точку на векторе(a, b)
с помощью вызова методаwrite
с соответствующими аргументами. Этот метод вызывается в строкеp.ve(1, 3, 2, 2);
с аргументамиa=2
иb=2
. - В основной части программы создается объект
p
классаPoint
и вызываются методыshow
иras
для этого объекта. Затем вызывается методve
для другого объектаp
с другими аргументами.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д