
В таблице Dat хранятся данные измерений среднесуточной температуры за неделю в градусах (Dat[1] − данные за понедельник, Dat[2] − за вторник и т. д.). Определите, что будет напечатано в результате работы следующей программы. Текст программы приведен на трех языках программирования.
| Алгоритмический язык | |
| алг нач целтаб Dat[1:7] цел k, m Dat[1] := 15; Dat[2] := 18 Dat[3] := 22; Dat[4] := 20 Dat[5] := 23; Dat[6] := 24 Dat[7] := 20 m:= 0 нц для k от 1 до 7 если Dat[k] > 20 то m := m + 1 все кц вывод m кон | |
| Бейсик | Паскаль |
| DIM Dat(7) AS INTEGER Dat(1) = 15: Dat(2) = 18 Dat(3) = 22: Dat(4) = 20 Dat(5) = 23: Dat(6) = 24 Dat(7) = 20 m = 0 FOR k = 1 TO 7 IF Dat(k) > 20 THEN m = m + 1 END IF NEXT k PRINT m END | var k, m: integer; Dat: array[1..7] of integer; begin Dat[1] := 15; Dat[2] := 18; Dat[3] := 22; Dat[4] := 20; Dat[5] := 23; Dat[6] := 24; Dat[7] := 20; m := 0; for k := 1 to 7 do begin if Dat[k] > 20 then m := m + 1; end; write(m); end. |
Решение.
Это задание ещё не решено, приводим решение прототипа.
В таблице Dat хранятся данные измерений среднесуточной температуры за неделю в градусах (Dat[1] — данные за понедельник, Dat[2] — за вторник и т. д.). Определите, что будет напечатано в результате работы следующей программы. Текст программы приведен на пяти языках программирования.
| Бейсик | Python |
|---|---|
DIM Dat(7) AS INTEGER DIM k, m AS INTEGER Dat(1) = −2: Dat(2) = −1 Dat(3) = 2: Dat(4) = 4 Dat(5) = 0: Dat(6) = −1 Dat(7) = −4 m = 0 FOR k = 1 TO 7 IF Dat(k) < 0 THEN m = m + 1 ENDIF NEXT k PRINT m | Dat = [−2, −1, 2, 4, 0, −1, −4] m = 0 for k in range(7): if Dat[k] < 0: m = m + 1 print (m)
|
| Паскаль | Алгоритмический язык |
Var k, m: integer; Dat: array[1..7] of integer; Begin Dat[1] := −2; Dat[2] := −1; Dat[3] := 2; Dat[4] := 4; Dat[5] := 0; Dat[6] := −1; Dat[7] := −4; m := 0; for k := 1 to 7 do if Dat[k] < 0 then begin m := m + 1; end; writeln(m); End.
| алг нач целтаб Dat[1:7] цел k, m Dat[1] := −2 Dat[2] := −1 Dat[3] := 2 Dat[4] := 4 Dat[5] := 0 Dat[6] := −1 Dat[7] := −4 m := 0 нц для k от 1 до 7 если Dat[k] < 0 то m := m + 1 все кц вывод m кон |
| С++ | |
#include <iostream> using namespace std; int main() { int Dat[7] = {−2, −1, 2, 4, 0, −1, −4}; int m = 0; for (int k = 0; k < 7; k++) if (Dat[k] < 0) m = m + 1; cout << m; return 0; } | |
Программа предназначена для нахождения количества дней, в которые температура была меньше нуля. Проанализировав входные данные, приходим к выводу, что ответ 4.
Ответ: 4.

