Занятие 24 из 24
Прогресс сохраняется в этом браузере
0%

Занятие 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.