Помощь - Поиск - Пользователи - Календарь
Полная версия: динамический массив
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Sancho
имеется кусок программы
Код

Procedure vvod(var a:array of integer;var b:integer);
Var i:integer;
begin
Writeln('------------');
Writeln('Vvod massiva');
Writeln('------------');
Writeln('skolko chisel v massive');
readln(b);
for i:=1 to b do begin
Writeln('Vvedite element massiva');
readln(a[i]);end;
end;

Var [b]a:array[0..100] of integer;[/b]
b:integer;
begin
vvod(a,b);
readln;
end;


надо чтобы вместо выделенного было просто a:array of integer

уже кучу литературы перечитал.. - никак не могу допереть. Подскажите пожалуйста на этом примере... как с ними работать.

заранее огромное спасибо.
Sancho
и это читал..
и поиск искал6)

покажите пожалуйста на данном примере. спасибо.
volvo
Цитата
надо чтобы вместо выделенного было просто a:array of integer

Ну, array of integer не получится, это тебе не Дельфи... Все, что могу предложить -

{$R-}
Type
PIntArray = ^TIntArray;
TIntArray = array[1 .. 1] of Integer;

Procedure vvod(Var a: PIntArray; Var b: Integer);
Var
i: integer;
begin
Writeln('------------');
Writeln('Vvod massiva');
Writeln('------------');
Writeln('skolko chisel v massive');
readln(b);

GetMem(a, b * SizeOf(Integer));

for i:=1 to b do begin
Writeln('Vvedite element massiva');
readln(a^[i]);
end;
end;

Var
a: PIntArray;
b: Integer;

begin
vvod(a,b);
readln;
{ ... }
FreeMem(a, b * SizeOf(Integer)); { Не забываем освобождать }
end.

Кстати, ты никогда не задумывался, ЗАЧЕМ нужен FAQ? Если каждый хочет , чтобы ИМЕННО ДЛЯ НЕГО написали заново... А вас тысячи, извините... Так что в следующий раз будешь делать сам...
Sancho
спасибо огромное..

Фак читал.. - нифига не понял..

теперь ясно, спасибо большое
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.