Определите, какое число будет напечатано в результате выполнения программы, записанной ниже на пяти языках программирования.
Бейсик
|
1 2 3 4 5 6 7 8 |
DIM N, S AS INTEGER N = 1 S = 0 WHILE N <= 150 S = S + 30 N = N * 5 WEND PRINT S |
Python
|
1 2 3 4 5 6 |
n = 1 s = 0 while n <= 150: s = s + 30 n = n * 5 print(s) |
Алгоритмический язык
|
1 2 3 4 5 6 7 8 9 10 11 |
алг нач цел n, s n := 1 s := 0 нц пока n <= 150 s := s + 30 n := n * 5 кц вывод s кон |
Паскаль
|
1 2 3 4 5 6 7 8 9 10 11 |
var n, s: integer; begin n := 1; s := 0; while n <= 150 do begin s := s + 30; n := n * 5 end; write(s) end. |
Си
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#include<stdio.h> int main() { int n, s; n = 1; s = 0; while (n <= 150) { s = s + 30; n = n * 5; } printf("%d", s); return 0; } |
Демонстрационный вариант ЕГЭ 2017 г. – задание №8
Решение:
Нужно определить значение переменной s в результате выполнения программы.
- Начальное значение переменной n=1, переменной s=0.
- Цикл в программе будет выполняться пока выполняется условие n<=150.
- После окончания цикла выводится значение переменной s.
- С каждым шагом цикла s увеличивается на 30 — s := s + 30 n увеличивается в 5 раз — n := n * 5.
- Таким образом цикл выполнится 4 раза (для n равной 1, 5, 25 и 125).
- Таким образом к начальному значению s=0 прибавиться 30*4=120 — это и есть наш ответ.
| n | s |
| 1 | 0 |
| 5 | 30 |
| 25 | 60 |
| 125 | 90 |
| 625 | 120 |
Ответ: 120
