Ввод массивов
- Метод присваивания элементам массива определенных значений с помощью оператора присваивания " : = ".
begin
a[1]:=25;
a[2]:=-346;
a[3]:=0;
...
a[10]:=-938;
...
- Прямое заполнение массива через ввод с клавиатуры используя функцию Read/Readln;
begin
repeat
write('Введите количество элементов массива ');
read(n);
until (n>1) and (n<=max);
for i:=1 to n do begin
write('a[',i,'] ');
readln(a[ i ]);
end;
...
- Заполнение массива посредством генератора случайных чисел;
a[1]:=2; a[2]:=3;{процедура инициализации ( раскачки) генератора случайных чисел}
for i:=1 to 10 do begin
a[ i ]:=random(19) {функция генерирующая случайное число то 0 до 18}
...
end;
...
Краткая информация об используемых функциях
Randomize - инициализирует генератор случайных чисел случайными значениями Random - возвращает случайное число в интервале (0..Num-1). Чтобы получить значение отличное от предыдущего то необходимо задать смещение.
Пример: необходим интервал [-50..50].
В этом случае длина интервала составляет 101, смещение для целых чисел будет записано как random(101)-50, для вещественных -random*101-50.
Еще пример: необходим интервал [20..30].
В этом случае длина интервала составляет 11, смещение для целых чисел будет записано как random(11)+20, для вещественных -random*11+20.
- Заполнение массива по определенному закону, т.е. с помощью формул;
...
begin
a[1]:=2; a[2]:=3; {т.к. формула заполнения a[ i ]=sqr(a[ i-1]-sqr(a[ i-2]), то соответственно 1-й и 2-й элементы не будут иметь двух предыдущих элементов, поэтому они заполняются с помощью оператора присваивания}
write(a[1],' ',a[2],' ');
for i:=3 to 10 do begin
a[ i ]:=sqr(a[ i-1]-sqr(a[ i-2]) {функция генерирующая случайное число то 0 до 18}
...
end;
...
- Заполнение файлов (двоичный типизированный/ нетипизированный, текстовый).На примере заполнения типизированного файла
mas:array[1..15] of integer;
n:=byte;
begin
assign(a,' file.bin '); {установка связи файловой переменной типа integer с двоичным типизированным файлом ( типизированный потому, что уже содержит элементы integer, т.е. тип данных определен)}
rewrite(a); {открытие файла посредством файловой переменной для записи}
write('Введите количество элементов массива ');
read(n);
for i:=1 to n do begin
read(mas[ i ]); {вводим значения элементов в ячейки массива}
write(a, mas[ i ]); {записываем значения элементов массива в файл}
end;
close(a); {обязательно закрываем файл после работы с ним}
end.
- Заполнение матрицы ( двумерный массив).
Заполнение двумерного массива производится с помощью вложенного цикла. Например: внешний цикл перебирает строки, а вложенный заполняет столбцы.
...
begin
read(m,n);
for i:=1 to m do
for i:=1 to m do
read(a[ i ]);
...
<< Назад 1| 2 |