2001-gre-vs-practice.pdf/Q10 — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
 
Строка 22: Строка 22:
 
=== Объяснение ===
 
=== Объяснение ===
  
В начале каждой итерации цикла p удваивается, а k увеличивается на 1. Начальные значения: p=1 и k=0. После первой итерации p=2 и k=1, после второй итерации p=4 и k=2, и так далее. Таким образом, p всегда равно на протяжении 2<sup>k</sup> всего цикла.
+
В начале каждой итерации цикла p удваивается, а k увеличивается на 1.  
  
 +
Начальные значения: p=1 и k=0. После первой итерации p=2 и k=1, после второй итерации p=4 и k=2, и так далее.
  
{{question-ok|}}{{reserve-task|[[Участник:ZharovG|ZharovG]] 15:51, 20 декабря 2024 (UTC)}}{{checkme|[[Участник:ZharovG|ZharovG]] 15:51, 20 декабря 2024 (UTC)}}
+
Таким образом, p всегда равно на протяжении 2<sup>k</sup> всего цикла.
  
[[Категория:Надо не забыть выбрать тему]]
+
{{question-ok|[[Участник:StasFomin|StasFomin]] 07:21, 21 декабря 2024 (UTC)}}
 +
 
 +
[[Категория:Циклы]]

Текущая версия на 07:21, 21 декабря 2024

Вопрос: Q10-e5724f

p := 1; k := 0;
while k < n do
begin
    p := 2 * p;
    k := k + 1
end;

Для фрагмента программы выше, включающего целые числа p, k и n, какой из следующих вариантов является инвариантом цикла, то есть истинным в начале каждого выполнения цикла и при завершении цикла?


Ответы

  • p = k + 1
  • p = (k + 1)2
  • p = (k + 1)2k
  • Правильный ответ: p = 2k
  • p = 2k + 1

Объяснение

В начале каждой итерации цикла p удваивается, а k увеличивается на 1.

Начальные значения: p=1 и k=0. После первой итерации p=2 и k=1, после второй итерации p=4 и k=2, и так далее.

Таким образом, p всегда равно на протяжении 2k всего цикла.