В результате выполнения программы напечатало число 40. Какое наибольшее значение может иметь переменная S после выполнения есл вводить только натуральные числа?
Var k, m, S, N: integer;
Dat: array[1..100] of integer;
Begin
N:= 100;
m := 0;
S := 100;
for k := 1 to N do readln(Dat[k]);
for k := 1 to N do
begin
S := S div Dat[k];
if Dat[k]>m then begin m := Dat[k]
end;
end;
writeln(m*2);
end.
Ответы на вопрос:
Объяснение:
) Анализируем программу и определяем назначение каждой из переменных в ней:
N – определяет, какая часть массива Dat реально используется в вычислениях (из него используются элементы с индексами от 1 до N, то есть пять первых элементов);
S – используется для накопления суммы этих элементов массива;
m – изначально равно нулю, а затем переприсваивается – в нее заносится значение элемента массива, если этот элемент больше, чем текущее значение m. Это – типичный алгоритм поиска максимума. Значит, в m определяется (и в конце работы программы выводится на экран) максимальное значение среди обрабатываемых N элементов массива. 2) Итак, из пяти значений массива максимальное равно 10. Каким может быть наибольшее возможное значение суммы этих элементов?
Очевидно, сумма будет наибольшей, если каждое из слагаемых (элементов массива) будет возможно наибольшим. А наибольшее возможное значение элемента массива уже определено: оно равно 10. Если каждый элемент этой части массива будет равен 10, то вычисленный максимум будет равен 10. (Если какие-то элементы массива меньше 10, то это не даст максимально возможную сумму. Если же какие-то элементы массива больше 10, то максимум был бы равен уже не 10, а этому большему значению.)
3) Итак, заданному условию соответствует случай, когда каждый из обрабатываемых пяти элементов массива равен 10. Тогда их сумма (максимально возможная) будет равна 5*10 = 50.
ответ: 50.
1 нравится комментирова
var
a: array[1..40] of integer;
i, sum: integer;
begin
sum : = 0;
for i: =1 to 40 do
begin
a[i]: = random(21);
if a[i] < = 10
sum: = sum + a[i]
end;
writeln (sum);
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
nuramanjol07.01.2020 08:32
-
Artemko133703.09.2022 23:00
-
zaporozkayaoks01.08.2020 11:06
-
annasevsehkocot30.05.2022 17:06
-
лехакек16.10.2022 16:05
-
zaret127.01.2021 20:09
-
897masterlomasotdp3h31.03.2022 03:59
-
aika19404.07.2022 16:05
-
янннак04.05.2023 09:49
-
rop1234123401.05.2020 22:43
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.