Top.Mail.Ru
Ответы
Аватар пользователя
16 лет назад
от
Изменено

Перевести программу с Паскаля на Delphi (ч.1), код приведён в пояснении

Есть этот вот код (вообще-то их 6, но пока что первый), нужно перевести на Делфи))) Пожалста, кто может, пусть сделает, но ссылки на мануалы и WiKi присылать не стоит)))
Зарание СПС)

program classvec;
{ об'єктне програмування - скалярний добуток векторів}
uses crt;

type mas=array[1..10]of integer;

vector=object {об'єктний тип vector}

n:integer; {вимірність вектора - поле об'єктного типу}

vec:mas; {значення елементів вектора}

name:char; {ім'я вектора}

procedure init(ch:char); {конструктор ініціалізації}

procedure showvec(ch:char); {метод відображення значень елементів}

procedure multipl(v:vector); {метод добутку векторів}
end;

procedure vector.init(ch:char); {тіло конструктора}
var i:integer; {ініціалізуються вимірність та значення елементів вектора}
begin
name:=ch;
write('ввід вимірності вектора ',name,': '); readln(n);
writeln('ввід ',n,' компонент ');
for i:=1 to n do read(vec);
end;

procedure vector.showvec(ch:char); {тіло методу відображення вектора на екрані}
var i:integer;
begin
name:=ch;
writeln('вхідний вектор ',name,':');
for i:=1 to n do write(vec,' ');
writeln;
end;

procedure vector.multipl(v:vector); {тіло методу множення векторів}
{n-вимірність вектора, що є полем класу; v.n- вимірність другого вектора; vec-вектор, що є полем класу; v.vec- вектор, на який множиться поле класу}

var sum,i,s:integer;
begin
if n<>v.n then begin {якщо вимірності векторів різні}
writeln('різні вимірності-множення неможливе');
readln;
exit;
end
else {якщо вимірності векторів однакові}
begin sum:=0;
for i:=1 to n do {скалярний добуток векторів}
sum:=sum+vec*v.vec;
write('результат множення ');
writeln('sum=',sum);
end;
end;

{--------------main program-----------------------}
var i,j:integer;
v1,v2:vector; {об'єкти вектори}
v:mas; {робоча змінна}

begin
clrscr; {очистка екрана}
v1.init('A'); {ініціалізація вектора А}
v2.init('B'); {ініціалізація вектора В}
v1.showvec('A'); {відображення значень елементів вектора А}
v2.showvec('B'); {відображення значень елементів вектора В}
v1.multipl(v2); {добуток векторів}
repeat until keypressed;
end .

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Новичок
16лет

Убрать uses Crt
добавить в начало {$apptype console}
Переделать object в class, и привести синтаксис создания классов к тому, что в Дельфи
Было
v1.init('A')
стало
v1 := vector.Create('A')
Все писать лень. Сам давай, иначе не научишься ничему.

Аватар пользователя
16лет

помоему легче с нуля написать чем разбираться, какое задание