Задание № 12587
В таблице Dat хранятся положительные или отрицательные целые числа. Определите, что будет напечатано в результате выполнения следующего алгоритма, записанного на трёх алгоритмических языках.
Алгоритмический язык
алг
нач
целтаб Dat[1:10]
цел k, m, num
Dat[1] := -7; Dat[2] := -8
Dat[3] := 3; Dat[4] := 6
Dat[5] := -4; Dat[6] := 3
Dat[7] := 5; Dat[8] := 5
Dat[9] := 7; Dat[10] := 1
num := 1; m := Dat[1]
нц для к от 2 до 10
если Dat[к]* m < 0 то
m := Dat[к]; num := к
все
кц
вывод m
кон
Бейсик
DIM Dat(10) AS INTEGER
Dat (1) = -7: Dat(2) = -8
Dat (3) = 3: Dat(4) = 6
Dat (5) = -4: Dat(6) = 3
Dat (7) = 5: Dat(8) = 5
Dat(9) = 7: Dat(10) = 1
num = 1: m = Dat(1)
FOR k = 2 TO 10
IF Dat(k)* m < 0 THEN
m = Dat(k)
num - k
END IF
NEXT k
PRINT m
END
Паскаль
var k, m, num: integer;
Dat: array[ 1.. 10 ] of integer;
begin
Dat[1] := -7; Dat[2] := -8;
Dat [ 3 ] : = 3; Dat[4] : = 6;
Dat [5] := -4; Dat[6] := 3;
Dat[7] := 5; Dat[8] := 5;
Dat [9] := 7; Dat[10] := 1;
num:= 1; m:= Dat[1];
for k:= 2 to 10 do begin
if Dat[k]* m < 0 then
begin
m := Dat [k]; num := k
end
end;
write (m);
end.
Рассмотрим на языке Паскаль
Условие проверяет знак произведения Dat[k] и m
Изначально m:=Dat[1]=-7
От k:=2 до 10 проведем вычисления
k=2 |Dat[2]=-8, m=-7 => Условие не выполняется
k=3 |Dat[3]=3, m=-7 => Условие выполняется, m:=3, num:=3
k=4 |Dat[4]=6, m=3 => Условие не выполняется
k=5 |Dat[5]=-4, m=3 => Условия выполняется, m:= -4, num:=5
k=6 |Dat[6]=3, m=-4 => Условие выполняется, m:=3, num:=6
k=7 |Dat[7]=5, m=3 => Условие не выполняется
k=8 |Dat[8]=5, m=3 => Условие не выполняется
k=9 |Dat[9]=7, m=3 => Условие не выполняется
k=10 |Dat[10]=1, m=3 => Условие не выполняется
В результате программы печатается m, которая у нас получила значение 3
Ответ: 3
Ответ: 3Нашли ошибку в задании? Выделите фрагмент и нажмите Ctrl + Enter.