Задание № 12650
В таблице Dat хранятся данные о количестве проданных единиц товаров 10 типов (Dat[1] — проданных товаров первого типа, Dat[2] — второго типа и т.д.). Определите, что будет напечатано в результате выполнения следующего алгоритма, записанного на трёх языках программирования.
Алгоритмический язык
алг
нач
целтаб Dat [1:10]
цел к, m
Dat [1] = 45; Dat[2]:= 55
Dat [3] = 40; Dat[4]:= 15
Dat [5] = 20; Dat[6]:= 80
Dat [7] = 35; Dat[8]:= 70
Dat [9] = 10
Dat [10] := 45
m:= Dat[l]
нц для к от 2 до 10
если Dat[к] < Dat[l] то
m := m + Dat[k]
все
кц
вывод m
кон
Бейсик
DIM Dat(10) AS INTEGER
Dat(1)= 45 Dat(2)= 55
Dat(3)= 40 Dat(4)= 15
Dat(5)= 20 Dat(6)= 80
Dat(7)= 35 Dat(8)= 70
Dat(9)= 10 Dat(10)= 45
m = Dat(1)
FOR k = 2 TO 10
IF Dat(k) < Dat (1)
THEN
m = m + Dat(k)
END IF
NEXT k
PRINT m
END
Паскаль
var k, m: integer;
Dat: array[1..10]
of integer;
begin
Dat[1]:= 45; Dat[2]:= 55;
Dat[3]:= 40; Dat[4]:= 15;
Dat[5]:= 20; Dat[6]:= 80;
Dat[7]:= 35; Dat[8]:= 70;
Dat[9]:= 10; Dat[10]:= 45;
m:= Dat [1];
for k:= 2 to 10 do begin
if Dat[k] < Dat[1] then
begin
m:= m + Dat [k]
end
end;
write(m);
end.
Решать другие задания по теме: Циклический алгоритм обработки массива чисел, записанный на алгоритмическом языке
Показать ответ
Комментарий:
Рассмотрим на языке Паскаль
Изначально переменная m:=Dat[1], т.е.45
Условие Dat[k]<Dat[1] проверяет все элементы, которые меньше чем Dat[1] (Равной 45), при выполнении условия переменная m:= m+Dat[k]
Фактически m= 45+ сумма всех элементов которые меньше 45
Под условие подходят: Dat[3]:=40,Dat[4]:=15,Dat[5]:=20,Dat[7]:=35,Dat[9]:=10
Их сумма 40+15+20+35+10=120
m:=45+120=165
Ответ: 165
Ответ: 165Нашли ошибку в задании? Выделите фрагмент и нажмите Ctrl + Enter.