Создание объекта и заполнение данными - Pascal

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

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

Здравствуйте. Пишу сюда, так как очень нужна помощь в решении поставленной задачи. Собственно задание, ниже.
Задание: Создать проект "геометрический объект". Заполнить с помощью матрицы параметры объекта. Количество столбцов: 4 ( координаты х,у; центра фигуры; S; P). Количество строк - 19.

Решение задачи: «Создание объекта и заполнение данными»

textual
Листинг программы
{$mode objfpc}
type
Tgeometric_figure = class
  private
    type
       TCoordinates = record
          x,y:double;
       end;
    var
     Coordinates: TCoordinates;
     S : double;
     P : double;
  public
    constructor Create(const x,y,_s,_p:double);
    procedure PrintLnObject;
end;
 
constructor Tgeometric_figure.Create(const x,y,_s,_p:double);
begin
     with Self do
     begin
          Coordinates.x:=x;
          Coordinates.y:=y;
          S:=_s;
          P:=_p;
     end;
end;
 
procedure Tgeometric_figure.PrintLnObject;
begin
     Write(Coordinates.x:10:4, Coordinates.y:10:4, s:10:4, p:10:4); writeln;
end;
 
var
  GF: array of Tgeometric_figure;
  matrix : array [1..4, 1..19] of double;
  i:byte;
 
begin
  SetLength(GF,19);
 
  Randomize;       // заполним массив случайными значениями
  for i:=1 to 19 do
      begin
           matrix[1,i]:=random(100)/(random(100)+1);
           matrix[2,i]:=random(100)/(random(100)+1);
           matrix[3,i]:=random(100)/(random(100)+1);
           matrix[4,i]:=random(100)/(random(100)+1);
      end;
 
  for i:=1 to 19 do GF[i]:=Tgeometric_figure.Create(matrix[1,i],matrix[2,i],matrix[3,i],matrix[4,i]);
 
  for i:=1 to 19 do GF[i].PrintLnObject; // вывод на экран всех объектов
  readln;
end.

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

  1. Создается тип данных Tgeometric_figure, который является классом.
  2. Внутри класса определен приватный тип данных TCoordinates, который представляет координаты точки в виде записи с полями x и y типа double.
  3. У класса Tgeometric_figure есть приватная переменная Coordinates, которая является экземпляром типа TCoordinates.
  4. У класса Tgeometric_figure есть приватные переменные S и P типа double.
  5. В конструкторе класса Tgeometric_figure устанавливаются значения координат, параметра s и p для нового объекта.
  6. В процедуре PrintLnObject выводится информация об объекте на экран.
  7. Создается массив GF типа array of Tgeometric_figure.
  8. Заполняется массив matrix случайными значениями от 0 до 100.
  9. Для каждого элемента массива matrix создается новый объект Tgeometric_figure с соответствующими координатами.
  10. Все созданные объекты выводятся на экран с помощью GF[i].PrintLnObject.
  11. Программа завершается считыванием символа новой строки.

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


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

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

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