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