Другие языки программирования и технологии

Объясните пожалуйста, что означает эта строка WRITE('ВВЕДИTE ЭЛЕМЕНТ МАССИВА '); READLN(MAS[1])?

PROGRAM PRG_1;
CONST М = 100;
VAR MAS : ARRAY[1..M] OF INTEGER;
I, MAX, K, N : INTEGER;
BEGIN
WRITE('BBEДИTE РАЗМЕР МАССИВА N = ');
READLN(N);
WRITE('ВВЕДИTE ЭЛЕМЕНТ МАССИВА ');
READLN(MAS[1]);
MAX := MAS[1];
K:= 1;

В строке WRITE('BBEДИTE РАЗМЕР МАССИВА N = ');READLN(N);я уже понял, что пользователь должен ввести размер массива, а по условию задачи надо найти значение максимального элемента.

А вот строки
WRITE('ВВЕДИTE ЭЛЕМЕНТ МАССИВА ');
READLN(MAS[1]);
MAX := MAS[1];
K:= 1;
мне не совсем понятны.

Далее, после того как ввели размер массива, ну например, ввели 98. С такой вводной нетрудно догадаться, что максимальный элемент и будет 98, а не 50, к примеру, а что значит WRITE('ВВЕДИTE ЭЛЕМЕНТ МАССИВА '); а затем READLN(MAS[1]); и MAX := MAS[1]; что это за 1 в двух этих строках? потом заканчивается K:= 1;, что вообще ввело меня в недоумение. Если нетрудно подскажите пожалуйста. А то я не могу разобраться, в учебниках расписано очень сжато, а детально никто не объясняет. Если 98 максимальный элемент, то зачем вводить еще элемент массива, максимальный элемент и непонятное K:= 1;???
Лучше бы весь текст программы, я просто увидела вопрос дальше, где он есть, поэтому могу объяснить:
1. Вот пользователь ввел n - сколько элементов будет в массиве.
2. Пользователь вводит 1-й элемент массива WRITE('ВВЕДИTE ЭЛЕМЕНТ МАССИВА ');
READLN(MAS[1]); - он считывается и сразу считается за максимальный MAX := MAS[1];
K:= 1; - это количество таких максимальных элементов.
Потом по программе проходятся все остальные элементы и сравниваются: если новый элемент больше чем текущий максимум, то мы за максимум считаем этот только что проверенный элемент, а если элемент который мы проверяем равен максимальному, то мы считаем, что теперь у нас максимум тот же, но их таких уже 2 (К: =К+1).

Если элементов 98 - максимум не 98, а какое-то число из этих 98 разных чисел. Если элемента 4: -2, 1, 0, 3 - то максимум "3". n - это просто число элементов в массиве. А переменная К - это сколько раз максимум встречается. Например: n=7, в массиве следующие элементы: -2, 0, 3, 1, 3, 2, 3. Ответ будет: максимум - 3, К = 3.
ВП
Владимир Перепелкин
8 526
Лучший ответ
Леонид Галимский Спасибо! Вот наконец-то стало понятно.
Ты прав, max не нужен. Достаточно просто k:=1;
Владимир П
Владимир П
72 031
Леонид Галимский это пример задачи и учебника, автор задачи значит знал что писал.
Леонид Галимский это пример задачи из учебника, автор задачи значит знал что писал.
Максимальный индекс в массиве и максимальный элемент в массиве - две большие разницы!

Перечитай определение массива!
Это не очень хороший учебник. Переменным надо давать осмысленные имена. Просто Бейсик какой то)) К это индекс максимального элемента, МАХ это максимальное значение, но это вы должны были догадаться, а у вас опыта нет...

Похожие вопросы