• Проанализируйте работу программы.
    program math;
    var x, y: integer;
    begin
    x:=1;
    y:=1;
    while x<5 do
    begin
    y:=y*2;
    x:=x+1
    end;
    end.
    Ответьте на вопросы:
    1) Сколько раз исполнится тело цикла?
    2) Какое значение примет х после завершения программы?
    3) Какое значение примет у после завершения программы?
    4) Сколько раз исполнится тело цикла, если изменить условие на x<=5 ?
    5) Сколько раз исполн. тело цикла, если изменить условие на x>=5 ?
    6) Сколько раз исполн. тело цикла, если изменить услов. на x>0 ?
    7) Что произойдёт, если из тела цикла убрать команду x:=x+1 ?
    8) Сколько раз исполн. тело цикла, если измен. команду x:=x+1 на x:=x+2 ?
    9) Сколько раз исполнится тело цикла, если измен. команду x:=x+1 на x:=x-1 ?

Ответы 1

  • x увеличивается в цикле с 1 до 4, каждый раз на 1.y каждый раз увеличивается в 2 раза, начиная с 1 и до 2^4 = 16.1) Тело цикла исполнится 4 раза.2) x примет значение 5.3) y примет значение 16.4) Если написать x <= 5, то тело цикла исполнится 5 раз.На выходе будет x = 6, y = 32.5) Если написать x >= 5, то тело цикла не будет исполнено ни разу, потому что условие сразу не выполняется.6) Если написать x > 0, то программа зациклится. Цикл будет исполняться бесконечно, потому что x всегда > 0.7) Если убрать команду x:=x+1, то программа тоже зациклится. Выхода не будет, потому что x всегда остается равным 1 < 5.8) Если написать команду x:=x+2, то тело цикла исполнится 2 раза: при x := 1 и при x := 3. На третий раз станет x = 5 и будет выход из цикла.9) Если написать команду x:=x-1, то программа зациклится. Выхода не будет, потому что x будет уменьшаться и всегда останется < 5.
    • Автор:

      mayapjfh
    • 5 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years