Что напечатает следующая программа? Письменно проанализируйте работу программы.
var n, S: integer;
begin
n := 1;
S := 0;
while n <= 256 do
begin
S := S + 20;
n := n * 4;
end;
write(s)
end.
Что напечатает следующая программа? Письменно проанализируйте работу
программы.
var k, S: integer;
begin
k := 10;
S := 0;
while k < 150 do
begin
S := S + k;
k := k + 10;
end;
write (s);
end.
Какой будет результат выполнения программы? Постройте трассировочную
таблицу.
program Summa;
var k, x, S: integer;
begin
S := 0;
for k := 0 to 4 do
begin
x := k * 2 + 1;
S := S + x;
end;
writeln (S);
end.
var n, S: integer; // Объявление переменных n и S, оба типа integer (целочисленные значения)
begin
n := 1; // Присваиваем переменной n значение 1
S := 0; // Присваиваем переменной S значение 0
while n <= 256 do // Пока значение n меньше или равно 256
begin
S := S + 20; // Увеличиваем значение переменной S на 20
n := n * 4; // Умножаем значение переменной n на 4
end;
write(s) // Выводим значение переменной S на экран
end.
Анализ работы программы:
В начале программы мы объявляем две переменные n и S, причем обе имеют тип integer, что означает, что они будут хранить только целочисленные значения.
Затем мы присваиваем переменной n значение 1 и переменной S значение 0.
Далее идет цикл while, который будет выполняться до тех пор, пока значение переменной n меньше или равно 256. Внутри цикла мы увеличиваем значение переменной S на 20 и умножаем значение переменной n на 4.
Таким образом, каждую итерацию цикла значение переменной S увеличивается на 20, а значение переменной n умножается на 4. Цикл будет выполняться до тех пор, пока значение переменной n не станет больше 256.
После окончания цикла мы выводим значение переменной S на экран с помощью команды write.
В результате работы программы на экран будет выведено число 1140.
Вторая программа:
var k, S: integer; // Объявление переменных k и S, оба типа integer (целочисленные значения)
begin
k := 10; // Присваиваем переменной k значение 10
S := 0; // Присваиваем переменной S значение 0
while k < 150 do // Пока значение переменной k меньше 150
begin
S := S + k; // Увеличиваем значение переменной S на значение переменной k
k := k + 10; // Увеличиваем значение переменной k на 10
end;
write (s); // Выводим значение переменной S на экран
end.
Анализ работы программы:
По аналогии с первой программой, в начале объявляем две переменные k и S типа integer.
Затем присваиваем переменной k значение 10 и переменной S значение 0.
Далее идет цикл while, который будет выполняться до тех пор, пока значение переменной k меньше 150. Внутри цикла мы увеличиваем значение переменной S на значение переменной k и увеличиваем значение переменной k на 10.
Таким образом, каждую итерацию цикла значение переменной S увеличивается на значение переменной k, а значение переменной k увеличивается на 10. Цикл будет выполняться до тех пор, пока значение переменной k не станет больше или равно 150.
После окончания цикла мы выводим значение переменной S на экран с помощью команды write.
В результате работы программы на экран будет выведено число 1050.
Третья программа:
program Summa;
var k, x, S: integer;
begin
S := 0;
for k := 0 to 4 do
begin
x := k * 2 + 1;
S := S + x;
end;
writeln (S);
end.
Анализ работы программы:
В начале программы мы объявляем три переменные k, x и S типа integer.
Затем присваиваем переменной S значение 0.
Далее идет цикл for, который будет выполняться пять раз (значение переменной k изменяется от 0 до 4). Внутри цикла мы вычисляем значение переменной x как k * 2 + 1 и прибавляем это значение к переменной S.
Таким образом, каждую итерацию цикла значение переменной x будет соответствовать нечетному числу (начиная с 1), и это значение будет добавляться к значению переменной S.
После окончания цикла мы выводим значение переменной S на экран с помощью команды writeln.
В результате работы программы на экран будет выведено число 25.
Трассировочная таблица:
k | x | S |
------------------------
0 | 1 | 1 |
1 | 3 | 4 |
2 | 5 | 9 |
3 | 7 | 16 |
4 | 9 | 25 |
В таблице мы отслеживаем значения переменных k, x и S на каждой итерации цикла. Изначально значение переменной S равно 0. На каждой итерации значения переменной x и S меняются в соответствии с вычислениями внутри цикла. В конце программы значение переменной S равно 25.