Как задать длину массива с клавиатуры. pascal
program matrix_1;
var n:byte;
const
n=
type
matrix=array[1..n,1..n] of real;
lin_matrix=array[1..n] of real;
procedure indata_n(var n: integer);
{поцедуа ввода длинны масива}
begin
writeln('введите длинну матицы');
readln(n);
end;
procedure indata_m(var m:matrix ; n:integer);
{поцедуа вода квадатной матицы}
var i,j:integer;
begin
for j:=1 to n do
for i:=1 to n do
begin
writeln('введите ',i,'-й элемкнт стpоки ',j);
readln(m[i,j]);
end;
end;
function min(m:matrix; j:integer):real;
{функция для нахождения минимального числа в стоке}
var i:integer;
k:real;
begin
k:=m[i,j];
for i:=1 to n do
if (k>=m[i,j]) then
k:=m[i,j];
result:=k;
end;
procedure min_el(var m2:lin_matrix;
m:matrix;
n:integer);
{процедура поиска минимальных элементов в страке и занисение их в новый линейный массив соответствующего элемента }
var i,j:integer;
begin
for j:=1 to n do
m2[j]:=min(m,j);
end;
procedure outdata(m2:lin_matrix);
var i :integer;
begin
for i:=1 to n do
writeln ('минимальный эемент соки ',i,'=',m2);
end;
var
m:matrix;
m2:lin_matrix;
begin
indata_n(n);
indata_m(m,n);
min_el(m2,m,n);
outdata(m2);
end.
вот собтвинна сома программа
Имеется в виду динамические массивы?
Для объявления массивов, для которым зарание известен размер, так:
var
a : array [0..2] of string; // массив из трех строк
Если длина задается динамически, то так:
var
a: array of string;
begin
setLength(a, 3); // длина массива теперь установлена с помощью функции SetLength
Вот так:
readln(n); {здесь ты задаешь длину}
for i:=1 to n do begin {цикл}
writeln ('a',i,'=');
readln(a[ i ]);
На сколько я помню, в паскале динамических массивов нет. Они появились позже - в OBJECT Pascal (DELPHI)
ииспользовать для этого целоцисленную переменную например, и заполнить ее данными введеными с клавиатуры например так.
var
n :integer
begin
readln(n);
end.
n-и будет длиной вашего массива. ;)