Текст задания. В таблице Dat хранятся данные о численности учеников в классах (Dat[1] – число учеников в первом классе, Dat[2] – во втором и т. д.). Определите, какое число будет напечатано в результате работы следующей программы. Текст программы приведён на трёх языках программирования. |
Решение: Выбор языка программирования за учащимися. Программа написана для одномерного массива численности учащихся по классам. В данной программе рассматриваются 11 классов школы с численностью учащихся в каждом классе. При решение данной программы необходимо вычислить значение переменной m с помощью организованного цикла с параметрами при k от 1 до 11, где k - номер класса, а m - количество классов с наполняемостью более 22. При рассмотрении программы можно заметить, что вывод значения переменной производится после окончания цикла, значит ответ будет единственный после вычисления при конечном параметре цикла (т.е. k = 11). Рассмотрим работу программы по шагам (шагов будет 11 - при k = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) Шаг 1. m = 0, k = 1: проверяется условие Dat [1] > 22, (т.е. Dat [1] = 20, условие: 20 > 22) - условие не выполняется, значит значение переменной m не меняется, m = 0. Шаг 2. m = 0, k = 2: проверяется условие Dat [2] > 22, (т.е. Dat [2] = 25, условие: 25 > 22) - условие выполняется, значит значение переменной m = 0 + 1 = 1. Шаг 3. m = 1, k = 3: проверяется условие Dat [3] > 22, (т.е. Dat [3] = 19, условие: 19 > 22) - условие не выполняется, значит значение переменной m не меняется, m = 1. Шаг 4. m = 1, k = 4: проверяется условие Dat [4] > 22, (т.е. Dat [4] = 25, условие: 25 > 22) - условие выполняется, значит значение переменной m = 1 + 1 = 2. Шаг 5. m = 2, k = 5: проверяется условие Dat [5] > 22, (т.е. Dat [5] = 26, условие: 26 > 22) - условие выполняется, значит значение переменной m = 2 + 1 = 3. Шаг 6. m = 3, k = 6: проверяется условие Dat [6] > 22, (т.е. Dat [6] = 22, условие: 22 > 22) - условие не выполняется, значит значение переменной m не меняется, m = 3. Шаг 7. m = 3, k = 7: проверяется условие Dat [7] > 22, (т.е. Dat [7] = 24, условие: 24 > 22) - условие выполняется, значит значение переменной m = 3 + 1 = 4. Шаг 8. m = 4, k = 8: проверяется условие Dat [8] > 22, (т.е. Dat [8] = 28, условие: 28 > 22) - условие выполняется, значит значение переменной m = 4 + 1 = 5. Шаг 9. m = 5, k = 9: проверяется условие Dat [9] > 22, (т.е. Dat [9] = 26, условие: 26 > 22) - условие выполняется, значит значение переменной m = 5 + 1 = 6. Шаг 10. m = 6, k = 10: проверяется условие Dat [10] > 22, (т.е. Dat [10] = 21, условие: 21 > 22) - условие не выполняется, значит значение переменной m не меняется, m = 6. Шаг 11. m = 6, k = 11: проверяется условие Dat [11] > 22, (т.е. Dat [11] = 27, условие: 27 > 22) - условие выполняется, значит значение переменной m = 6 + 1 = 7. Шаг 11 был последним, вывод ответа m = 7. |
вернуться |