Помогите пожалуйста описать двумерный массив с изменяемой размерностью. Паскаль

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
ATAMAH
Сообщения: 3
Зарегистрирован: 10 апр 2010, 21:29

Здравствуйте.
Не могу решить простую задачу. Подскажите пожалуйста как описать в Паскале двумерный числовой произвольный массив (кол-во строк и столбцов можно будет задавать в начале программы). Примеров с заданием размерности массива с помощью константы много, а про произвольный ничего не ясно. Пробовал использовать типизированные константы, начинает ругаться компилятор, видимо описываю неправильно.
program zadanie;

uses crt;

const a:integer=2;
b:integer=2;

type mas=array[1..a, 1..b] of integer;

var massiv: mas;

procedure InsertMas(var mass: mas; a,b: integer);

var i,j:integer;

begin
for i:=1 to a do
for j:=1 to b do
begin
write('Введите [',i,',',j,']-ый элемент массива: '); readln(mass[i,j]);
end;
end;

procedure PrintMas(mass: mas; a,b: integer);

var i,j:integer;

begin
for i:=1 to a do
for j:=1 to b do
begin
gotoxy(j*5+50,i);
write(mass[i,j]);
end;
end;


BEGIN
clrscr;
writeln('Введите количество строк в массиве '); readln(a);
writeln('Введите количество столбцов в массиве '); readln(b);
InsertMas(massiv);
PrintMas(massiv);

readln;
readln;
END.
Всю голову себе сломал.
Очень буду признателен.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

В Паскале это крайне криво реализовано. Копайте в сторону указателей.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить