Другие языки программирования и технологии

Функции и массивы в Pascal

нужна функция вывода массива на экран. т. е. у меня есть массив я с ним провожу различные операции и в 15 циклах я должен писать код для его вывода, но это не очень удобно! решил сделать функцию, да вот не выходит ( если можно дайте кусочек кода
Интересное кино - в качестве аргумента функции ты передаешь ДИНАМИЧЕСКИЙ массив, размер которого тебе заранее не известен.. . У меня подобное просто не скомпилилось, а при отключении контроля ошибок прога просто зависла.. . Это первое. Второе - а зачем аргумент var? Ты ж его не меняешь?

...
procedure MasVivod (Mas : array of byte);
var
MasLen : Integer;
counter: Integer;
begin
MasLen := High(Mas);
for counter := 0 to MasLen
do WriteLn(Mas);
end
....
Дмитрий Ургапов
Дмитрий Ургапов
15 333
Лучший ответ
var i:integer;
А.
Андрей ...
10 895
Главы 39 и 40 здесь почитайте:
Песни о Паскале - программирование для школьников и начинающих.
Объявите тип для массива, и применяйте его везде.
procedure arr_out (mas : array([1..10] of byte);
var i : byte;
begin
for i:= 1 to 10 do
write (mas[ i ] : 4);
end;

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

ЗЫ: Андрей Коптевич,
//write (mas:4); - это я вообще не пойму откуда взялось
//write (mas:4); - к типу byte :4 вообще не применимо
причем тут тип byte, эдесь попытка реализовать форматированный вывод, просто не совсем правильная
write (mas[ i ] : 4);
имеется в виду что поб вывод каждого элемента массива будет выделено 4 ячейки (или хз как их еще назвать) на экране)
Используй процедуру.
Название процедуры Print_Massiv. В том месте где надо вывести массив пишешь Print_Massiv. Сама Print_Massiv содержит следующее:
procedure Print_Massiv;
var i : Integer;
begin
for i:=1 to N do write(A,' '); // N-количество элементом массива, A - название массива
end;

Вот и всё.

Да, твой код, это нечто.
a:=random(255); - ты задаёшь рандом, нужно a;
write (mas:4); - это я вообще не пойму откуда взялось
write (mas:4); - к типу byte :4 вообще не применимо
VC
Vadim Ch
1 280