Задание № 12671

В таблице Dat хранятся данные о количестве проданных единиц товаров 10 типов (Dat[1] — проданных товаров первого типа, Dat[2] — второго типа и т.д.). Определите, что будет напечатано в результате выполнения следующего алгоритма, записанного на трёх языках программирования.

Алгоритмический язык

алг		
нач
 целтаб Dat[1 : 10]
 цел k, 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[1]
  нц для к от 4 до 10
  если Dat[к] <= Dat[1] TO
   m:= m + Dat [к]
  все
 кц
 вывод 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 = 4 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:= 4 to 10 do begin
  if Dat[k] <= Dat[l] 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

Так же проверяются только k от 4 до 10

Под условие подходят: Dat[4]:=15,Dat[5]:=20,Dat[7]:=35,Dat[9]:=10,Dat[10]:=45

Их сумма 15+20+35+10+45=125

m:=45+125=170

Ответ: 170

Ответ: 170

Нашли ошибку в задании? Выделите фрагмент и нажмите Ctrl + Enter.