В таблице Dat хранятся данные о количестве самолётов, отправляющихся из аэропорта города...

0 голосов
162 просмотров

В таблице Dat хранятся данные о количестве самолётов, отправляющихся из аэропорта города на юг в первой декаде августа (Dat[1] — количество самолётов первого числа, Dat[2] — количество самолётов второго числа и т. д.). Определите, что будет напечатано в результате выполнения следующего алгоритма, записанного на трёх алгоритмических языках. Алгоритмический язык Бейсик Паскаль алг нач целтаб Dat[1:10] цел k, m, day Dat[1] := 2 Dat[2] := 2 Dat[3] := 3 Dat[4] := 3 Dat[5] := 4 Dat[6] := 4 Dat[7] := 5 Dat[8] := 5 Dat[9] := 6 Dat[10] := 6 day:=1; m := Dat[1] нц для k от 2 до 10 если Dat[k] >= m то m:= Dat[k] day := k все КЦ вывод day КОН DIM Dat(10) AS INTEGER Dat[1] = 2 Dat[2] = 2 Dat[3] = 3 Dat[4] = 3 Dat[5] = 4 Dat[6] = 4 Dat[7] = 5 Dat[8] = 5 Dat[9] = 6 Dat[10] = 6 day = 1: m = Dat(1) FOR k = 2 TO 10 IF Dat(k) >= m THEN m = Dat(k) day = k END IF NEXT k PRINT day END Var k, m, day: integer; Dat: array[1...10] of integer; Begin Dat[1] := 2; Dat[2] := 2; Dat[3] := 3; Dat[4] := 3; Dat[5] := 4; Dat[6] := 4; Dat[7] := 5; Dat[8] := 5; Dat[9] := 6; Dat[10] := 6; day:=1; m := Dat[1]; for k := 2 to 10 do if Dat[k] >= m then begin m:= Dat[k]; day := k; end; write(day); End.


Информатика (27 баллов) | 162 просмотров
0

Красота оформление! Сами-то можете разобрать?

0

Извините за оформление

0

Это если модераторы не удалят, пусть извиняют)

Дано ответов: 2
0 голосов
Правильный ответ

В программе определяется максимальное значение в массиве Dat и номер элемента, имеющего это максимальное значение. В терминах задачи - определяется максимальное количество самолетов и число, когда было отправлено это максимальное количество самолетов.
Значение переменной m после завершения цикла будет = 6, а значение переменной day будет = 10. На экран будет выведено значение 10.
Начальные присваивания:
day:=1; m := Dat[1]; 
Затем в цикле элементы массива (начиная со второго) сравниваются с текущим значением переменной m (Dat[k] >= m). Если это условие выполняется, то значение переменных m и day меняются. Таким образом, после проверки всех элементов массива в переменной m будет записано максимальное значение (точнее - последнее максимальное, так как знак сравнения >=), а в переменной day - номер элемента массива, имеющего это максимальное значение.

(194k баллов)
0

а можно подробнее написать? объяснить как вы решили

0

Читайте более подробное объяснение.

0 голосов

Поподробнее ...
Ну это конечно нормально, смешать три языка программирования в одну кучу ... Ну то, что на Pascal  выцарапал. Даже не знаю, стоило ли тратить время на это.

Ну а ответ: day = 10

Var
k, m, day:
integer;
Dat: array[1..10] of integer;
Begin
 Dat[1]:= 2;Dat[2]:= 2;
 Dat[3]:= 3;Dat[4]:= 3;
 Dat[5]:= 4;Dat[6]:= 4;
 Dat[7]:= 5;Dat[8]:= 5;
 Dat[9]:= 6;Dat[10]:= 6;
 day:=1; m := Dat[1];
 for k := 2 to 10 do
  if Dat[k] >= m then begin
    m:= Dat[k];
    day := k;
  end;
 write(day);
end.


(13.9k баллов)