№4. определить значение переменной s после выполнения следующих операторов: s: =1; i: =1 for i: =2 to 2 do s: =s+1/i; s= s: =0; i: =1 for i: =2 to -5 do s: =s+1/i; s= s: =1; i: =1 for i: =2 downto 2 do s: =s+1/i; s= №5. определить сколько раз будет выполняться тело следующих операторов цикла. k: =0; for i: =1 to k+3 do k: =k+1; k: =0; for i: =1 to 9 do k: =k+sqr(i); k: =0; for i: =9 to 1 do k: =k+1; k: =0; for i: =1 to 1 do k: =k+1;

dashameluhova95 dashameluhova95    3   01.10.2019 20:20    4

Ответы
karolsevilla2017 karolsevilla2017  09.10.2020 10:17
Задание №4. Определить значение переменной S после выполнения следующих операторов:
1) S:=1; I:=1 For I:=2 to 2 do S:=S+1/I; S=1.5
2) S:=0; I:=1 For I:=2 to -5 do S:=S+1/I; S=0
3) S:=1; I:=1 For I:=2 downto 2 do S:=S+1/I; S=1.5

Задание №5. Определить сколько раз будет выполняться тело следующих операторов цикла.
1) K:=0; For i:=1 to K+3 do K:=K+1; ответ: 3
2) K:=0; For i:=1 to 9 do K:=K+sqr(i); ответ: 9.
3) K:=0; For i:=9 to 1 do K:=K+1; ответ: 0
4) K:=0; For i:=1 to 1 do K:=K+1; ответ: 1
ПОКАЗАТЬ ОТВЕТЫ
gladyshchuk71 gladyshchuk71  25.01.2024 22:06
№4.
Последовательность операторов дана в двух строках. Для удобства разберем их по отдельности.

Сначала у нас есть две строки:

s := 1;
i := 1

Переменной s присваивается значение 1, а переменной i также присваивается значение 1.

Далее имеем следующий цикл:

for i := 2 to 2 do
s := s + 1/i;

У нас указан диапазон для переменной i от 2 до 2, что означает, что цикл выполняется только один раз со значением i равным 2. Внутри цикла значение s обновляется следующим образом: s = s + 1/i. Здесь s равно 1 (из предыдущей строки), поэтому оно увеличивается на 1/2 и присваивается обратно переменной s. Итак, после выполнения этого цикла s будет равно 1 + 1/2, то есть 1.5.

Затем идут строки:

s := 0;
i := 1

Переменной s присваивается значение 0, а переменной i присваивается значение 1.

Последняя последовательность операторов:

for i := 2 to -5 do
s := s + 1/i;

Здесь указан диапазон для переменной i от 2 до -5, но такой диапазон не имеет значения и цикл не будет выполняться ни разу, поскольку начальное значение i (2) больше конечного значения (-5). Следовательно, оператор внутри цикла не будет выполнен и значение s не изменится от начального значения 0. Таким образом, s останется равным 0.

Далее имеем строки:

s := 1;
i := 1

Переменной s присваивается значение 1, а переменной i присваивается значение 1.

Последняя последовательность операторов:

for i := 2 downto 2 do
s := s + 1/i;

Здесь указан диапазон для переменной i от 2 до 2 в обратном порядке, что означает, что цикл выполняется только один раз со значением i равным 2. Внутри цикла значение s обновляется следующим образом: s = s + 1/i. Здесь s равно 1 (из предыдущей строки), поэтому оно увеличивается на 1/2 и присваивается обратно переменной s. Итак, после выполнения этого цикла s будет равно 1 + 1/2, то есть 1.5.

Таким образом, выполнение всех операторов приведет к тому, что переменная s будет иметь значение 1.5.

№5.
У нас также есть несколько последовательностей операторов, разделяемых строками.

В первой последовательности:

k := 0;
for i := 1 to k+3 do
k := k+1;

Переменной k присваивается значение 0, а переменной i присваивается значение 1. Далее указан диапазон для переменной i от 1 до k+3. Здесь k равно 0, поэтому диапазон будет от 1 до 0+3, то есть от 1 до 3. Цикл выполняется три раза, так как значение i принимает значения 1, 2 и 3. Внутри цикла значение k обновляется следующим образом: k = k + 1. Значение k увеличивается на 1 при каждом выполнении цикла. Поэтому в результате цикла значение k будет равно 3.

Во второй последовательности:

k := 0;
for i := 1 to 9 do
k := k + sqr(i);

Последний цикл, указанный в коде, имеет оператор внутри цикла, который вычисляет квадрат каждого значения i и увеличивает значение k на эту часть. Переменной k присваивается значение 0, а переменной i присваивается значение 1. Затем указан диапазон переменной i от 1 до 9. Цикл будет выполняться 9 раз, так как переменная i принимает значения от 1 до 9. В каждом выполнении цикла значение квадрата переменной i увеличивает значение k. Итак, с каждым выполнением цикла значение k будет увеличиваться на 1+4+9+16+...+81. В конечном итоге, после выполнения цикла, значение k будет равно сумме квадратов всех чисел от 1 до 9.

В третьей последовательности:

k := 0;
for i := 9 to 1 do
k := k + 1;

В этой последовательности указан диапазон переменной i от 9 до 1, что означает, что цикл не будет выполняться ни разу, так как конечное значение (1) меньше начального (9). Следовательно, оператор внутри цикла не будет выполнен и значение k останется равным начальному значению 0.

В четвертой последовательности:

k := 0;
for i := 1 to 1 do
k := k + 1;

В этой последовательности указан диапазон переменной i от 1 до 1, что означает, что цикл выполняется только один раз со значением i равным 1. Внутри цикла значение k обновляется следующим образом: k = k + 1. Здесь k равно 0 (из предыдущей строки), поэтому оно увеличивается на 1 и присваивается обратно переменной k. Итак, после выполнения этого цикла значение k будет равно 0 + 1, то есть 1.

Таким образом, переменная k будет иметь значение 3 после выполнения первой последовательности операторов и значение 1 после выполнения четвертой последовательности операторов.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика