Занятие 24 из 24
Прогресс сохраняется в этом браузере
Занятие 24. Массивы
Массив — это упорядоченный набор элементов одного типа, объединённых под одним именем. Каждый элемент имеет свой индекс (порядковый номер). Массив идеален для хранения списков: оценок, температур, имён.
1. Прочитайте слова и словосочетания, переведите, запомните их значения.
| Табли́ца | |
| Масси́в | |
| Разме́рность (ж.р.) | Разме́рность масси́ва |
| Разме́р | Разме́р масси́ва |
| Случа́йный, -ая, -ое, -ые | Случа́йные чи́сла |
| Да́тчик | Да́тчик случа́йных чи́сел |
| Устано́вка | Устано́вка да́тчика случа́йных чи́сел |
| Генери́ровать I, сгенери́ровать I (что?) | |
| Генера́тор | Генера́тор случа́йных чи́сел |
| Генера́ция (сущ., ж.р.) | Генера́ция случа́йного числа́ |
📖 Теория
Объявление массива
var
a: array[1..10] of integer; // массив из 10 целых чисел
marks: array[1..5] of real; // 5 вещественных чисел
letters: array[1..3] of string; // 3 строки
// Доступ к элементу:
a[1] := 100;
writeln(a[1]);
Заполнение и обход массива
for i := 1 to 10 do
a[i] := i * i; // заполнили квадратами
for i := 1 to 10 do
writeln(a[i]); // вывели по одному в строке
▶ Запустить Тренажёр: заполнить и вывести массив
Запусти — программа создаёт массив квадратов чисел от 1 до 10 и печатает их.
ArraySquares.pas
program ArraySquares;
var a: array[1..10] of integer;
i: integer;
begin
for i := 1 to 10 do
a[i] := i * i;
for i := 1 to 10 do
writeln('a[', i, '] = ', a[i]);
end.
▶ Запустить Тренажёр: сумма элементов массива
Программа складывает все элементы массива.
ArraySum.pas
var a: array[1..5] of integer;
i, sum: integer;
begin
a[1] := 10; a[2] := 20; a[3] := 30; a[4] := 40; a[5] := 50;
sum := 0;
for i := 1 to 5 do
sum := sum + a[i];
writeln('Сумма = ', sum);
end.
▶ Запустить Тренажёр: поиск максимума
Программа находит наибольший элемент массива.
ArrayMax.pas
var a: array[1..6] of integer;
i, max: integer;
begin
a[1] := 7; a[2] := 23; a[3] := 4; a[4] := 19; a[5] := 41; a[6] := 12;
max := a[1];
for i := 2 to 6 do
if a[i] > max then max := a[i];
writeln('Максимум = ', max);
end.
Что выведет? Тренажёр: что выведет программа?
Массив заполняется в обратном порядке.
program.pas
var a: array[1..5] of integer;
i: integer;
begin
for i := 1 to 5 do
a[i] := 6 - i;
for i := 1 to 5 do
writeln(a[i]);
end.
Заполни пропуск Тренажёр: заполни массив
Программа должна заполнить массив A[1..5] кубами чисел и вывести их. Подсказки в комментариях справа.
var a: array[1..] of integer; // введите число
i: integer;
begin
for i := 1 to 5 do
a[] := i i i; // имя переменной и арифметические операторы
for i := 1 to 5 do
writeln(a[i]);
end.