1. Проанализируйте работу программы. program n_1; var x, y:...

0 голосов
367 просмотров

1. Проанализируйте работу программы. program n_1; var x, y: integer; begin x:=2; y:=1; while x<6 do begin y:=y*2; x:=x+1; end; end. Ответьте на вопросы: а) сколько раз исполнится тело цикла? б) какое значение примет x после завершения программы? в) какое значение примет y после завершения программы? г) сколько раз исполнится тело цикла, если изменить условие на x<=6? д) сколько раз исполнится тело цикла, если изменить условие на x>=6? е) сколько раз исполнится тело цикла, если изменить условие на x>0?


Информатика (12 баллов) | 367 просмотров
Дан 1 ответ
0 голосов

Ответ:

Объяснение:

Смысл работы программы в том, что пока х будет меньше 6, то к нему будет прибавляться 1, а у будет умножаться на 2. После того, как х примет значение 6, программа завершится.

а) сколько раз исполнится тело цикла?

Изначально х=2

1) цикл -х=2+1=3

2) цикл -х=3+1=4

3) цикл -х=4+1=5

4) цикл -х=5+1=6

Всего исполнится 4 раза

б) какое значение примет x после завершения программы?

Х примет значение 6, так как было показано выше.

в) какое значение примет y после завершения программы?

Всего 4 цикла, а значит y ровно 4 раза умножится на 2

Первый раз: 1*2=2

Второй раз: 2*2=4

Третий раз: 4*2=8

Четвертый раз: 8*2=16.

Ответ 16.

Можно было посчитать и проще, просто 2 возвести в четвертую степень.

г) сколько раз исполнится тело цикла, если изменить условие на x<=6?</u>

Изначально х=2

1) цикл -х=2+1=3

2) цикл -х=3+1=4

3) цикл -х=4+1=5

4) цикл -х=5+1=6

5) цикл -х=6+1=7

почему 5 раз, а не 4, как было выше?

Потому что в этом условии сказано: Пока х будет меньше либо равен 6, на 4 цикле он равен 6 , значит он идет дальше, и на 5 цикле он уже равен 7, А значит цикл завершается.

д) сколько раз исполнится тело цикла, если изменить условие на x>=6?

Цикл работать не будет, так как:

х:=2+1=3

3 не больше и не равен 6, цикл завершается.

е) сколько раз исполнится тело цикла, если изменить условие на x>0?

Цикл будет работать бесконечно, потому что, будет постоянно накапливать, то есть уходить в плюс.

(2.4k баллов)