Обращение к конкретному элементу массива осуществляется путем указания имени массива и индекса этого элемента в [ ]
Name[15], Temperature[10], Kino[5,6]
Элементы массивов используются в выражениях также, как и обычные переменные:
Name[15]:= ‘Иванов ‘;
Sum:=Sum+Temperature[10];
Kino[5,6]:=‘Свободно ‘ ;
В качестве индексов массивов можно использовать переменные целого типа:
Name[i], Temperature[k], Kino[i,j]
Это свойство дает возможность обрабатывать массивы в циклах, в которых индекс массива является одновременно и счетчиком цикла.
Рассмотрим работу с массивом на примерах:
Задача 1.
Написать программу, которая сначала должна обеспечить ввод 5 чисел в одномерный массив, затем вычислить их сумму и вывести ее на экран.
Program Sum_mas;
uses Crt;
Var i: integer;
Sum : real;
M : array [1..5] of Real;
begin
Clrscr;
For i:=1 to 5 do
begin
write ('m[',i,']=');
readln(m[i]);
end;
sum:=0;
For i:=1 to 5 do
Sum:=sum+m[i];
Writeln ('Sum=',sum:6:2);
readln;
end.
Начало
i:=1, 5
Ввести m[i]
Sum:=0
i:=1, 5
Sum:=sum+m[i]
Вывести Sum
Конец
Задача 1.
Написать программу, которая вычисляет среднюю за неделю температуру воздуха. Исходные данные должны вводиться во время работы программы.
Рекомендуемый вид экрана при работе программы:
Введите температуру воздуха за неделю.
1 день= 2
2 день= 0
3 день= -3
4 день= 1
5 день= 3
6 день= -2
7 день= 0
Средняя температура: 0.00 град.
Массив – это структура данных, представляющая собой совокупность элементов одного типа.
Массив должен быть объявлен в разделе объявления переменных.
Доступ к элементу массива осуществляется путем указания имени массива и индекса (номера) элемента.
Для ввода, вывода и обработки массивов удобно применять команды цикла.
Задача 2.
Заполнить массив случайными числами и вывести его на экран компьютера.
Program Random_mas;
uses Crt;
Var i: integer;
Ran : array [1..10] of integer;
begin
Clrscr;
Randomize;
For i:=1 to 10 do
begin
ran[i]:=random(100);
writeln(ran[i]);
end;
readln;
end.
Program Poisk_mas;
uses Crt;
Var i, x: integer;
A : array [1..20] of integer;
c: string;
begin
Clrscr; Randomize;
Write ('Zadayte chislo X ');
readln (x);
c:='v massive net chisla x';
For i:=1 to 20 do
begin
a[i]:=random(10);
writeln(A[i]);
if a[i]=x then c:='v massive est chislo x';
end;
writeln (c);
readln; end.
Задача 3.
Определить, содержит ли массив A[1..20] случайных чисел число Х, введенное с клавиатуры.
max then max:=a[i]; writeln; writeln ('max=', max:8:3); readln; end. Задача 4. Заполнить массив значениями, вычисляемыми по формуле: a[i]:=sin i *i 2 Вывести элементы этого массива на экран компьютера и найти максимальное значение среди них." width="640"
Program Max_mas;
uses Crt;
Var i:integer;
max: real;
A : array [1..10] of real;
begin
Clrscr;
For i:=1 to 10 do
begin
a[i]:=sin(i)*sqr(i);
writeln(A[i]:8:3);
end;
max:=A[1];
For i:=2 to 10 do
if a[i] max then max:=a[i];
writeln;
writeln ('max=', max:8:3);
readln; end.
Задача 4.
Заполнить массив значениями, вычисляемыми по формуле:
a[i]:=sin i *i 2
Вывести элементы этого массива на экран компьютера и найти максимальное значение среди них.
Задача 2.
Написать программу, которая вводит с клавиатуры одномерный массив из 5 целых чисел и выводит количество ненулевых элементов. Перед вводом каждого элемента должна появляться подсказка с номером.
Рекомендуемый вид экрана при работе программы:
После ввода каждого числа нажмите
A[1]= 12
A[2]= 0
A[3]= -3
A[4]= 1
A[5]= 0
В массива 3 ненулевых элемента
Задача 3
Написать программу, которая определяет, сколько раз в массиве случайных чисел A[1..100] встречается число Х, введенное с клавиатуры.
Задача 1.
Написать программу, которая вычисляет среднее арифметическое ненулевых элементов массива М[1..100] , элементы которого вычисляются по формуле:
М[i]=sin(i)*cos(i)
Задача 2.
Написать программу, которая проверяет, образуют ли элементы массива Х [1..10], введенного с клавиатуры неубывающую последовательность.