3. Используя программы из примера 3.19 или 3.20, задайте массив из n случайных чисел из отрезка [–10; 10]. Выведите: первый элемент; последний элемент; элемент, стоящий на среднем месте.
Заполнять массив будем в цикле с помощью функции random(-10, 10)
, которая будет возвращать нам случайные числа в отрезке [-10; 10]. Обращение к первому элементу при выводе на экран будет выглядеть так: a[1]
; к последнему: a[n]
. Чтобы вывести элемент, стоящий на средней позиции, сначала может показать, что нужно обратиться к элементу n/2
или n div 2
. Однако это не так, поскольку n
является integer
и делить его нельзя. Даже если n
объявить как real
, на выходе n/2
может появится дробное число, а дробного индекса в массиве не бывает. Если воспользуемся n div 2
, то получим число, смещённое от среднего влево. Например в массиве с 7 элементами [1, 2, 3, 4, 5, 6, 7]
, n = 7
, а n div 2
— поулчится 3. Хотя средний элемент — 4. Поэтому для нахождения среднего элемента будем использовать n div 2 + 1
.
var a: array[1..100] of integer;
var n: integer;
begin
write('Введите количество чисел в массиве: ');
readln(n);
for var i := 1 to n do
a[i] := random(-10, 10);
writeln('Первый элемент: ', a[1]);
writeln('Последний элемент: ', a[n]);
writeln('Элемент, стоящий на среднем месте: ', a[n div 2 + 1]);
end.