Определи, что будет выведено в результате работы программы.



program prog;

var i, count, m1, m2: integer;

const arr: array [1..10] of integer = (47, 38, 49, 74, 86, 89, 74, 23, 20, 21);

begin

count := 0;

m1 := arr[0];

m2 := arr[0];

for i := 1 to 10 do

begin

if arr[i] < 50 then count := count + 1;

if m1 > arr[i] then m1 := arr[i];

if m2 < arr[i] then m2 := arr[i];

end;

write((m1 + m2) * count);

end.

Ответ запишите числом. Спасибо!!!

Ответы

Ответ дал: huston81
0

Ответ:

Если запустить этот код, то будет ошибка в строках 6 и 7, потому что массив задан начиная с индекса 1 (const arr: array [1..10] of integer = (... ), а в строках 6 и 7 берется индекс 0 (m1 := arr[0];). Если исправить эту ошибку, то в результате получим число 654

Объяснение:

Приложения:

lotvet: Спасибо большое за ответ! Но почему то пишет неверно
lotvet: То есть эта задача составлена неверно, я правильно понимаю?
huston81: Программа ищет наименьший и наибольший элементы (89 и 20), суммирует их и сумму умножает на количество элементов, меньших 50 (их 6). Получается (89+20)*6=654
huston81: Задача поставлена верно и ответ очевиден. Вот только в самом коде программы ошибки в 6 и 7 строках.
lotvet: Почему то пишет, что ответ 654 неправильный, хотя получается 654
Вас заинтересует