2011-gre-cs-practice-book.pdf/Q19 — различия между версиями
Материал из DISCOPAL
Urmat A (обсуждение | вклад) |
StasFomin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | |||
== Вопрос: Q19-08c765 == | == Вопрос: Q19-08c765 == | ||
Пусть все переменные целые и m >= 1. | Пусть все переменные целые и m >= 1. | ||
Псевдокод 1: | Псевдокод 1: | ||
− | < | + | <code-pascal> |
sum = 0 | sum = 0 | ||
for i = 1 to m | for i = 1 to m | ||
− | + | sum = sum + i | |
output ( sum ) | output ( sum ) | ||
− | </ | + | </code-pascal> |
Следующий псевдокод должен выполнять то же самое: | Следующий псевдокод должен выполнять то же самое: | ||
Псевдокод 2: | Псевдокод 2: | ||
− | < | + | <code-c> |
sum = 0 | sum = 0 | ||
i = <initial value> | i = <initial value> | ||
Строка 23: | Строка 22: | ||
} | } | ||
output ( sum ) | output ( sum ) | ||
− | </ | + | </code-c> |
=== Ответы === | === Ответы === | ||
При каких значениях <initial_value> и <condition>, псевдокод 1 выдаст то же самое, что и псевдокод 2? | При каких значениях <initial_value> и <condition>, псевдокод 1 выдаст то же самое, что и псевдокод 2? | ||
− | + | * 0 и i < m-1 | |
− | + | * Правильный ответ: 0 и i < m | |
− | + | * 0 и i < m+1 | |
− | + | * 1 и i < m | |
− | + | * 1 и i < m+1 | |
Строка 37: | Строка 36: | ||
{{cstest-source|2011-gre-cs-practice-book.pdf|24|19}} | {{cstest-source|2011-gre-cs-practice-book.pdf|24|19}} | ||
− | Можно понять, что в первом коде sum = 1 + 2 + ... + m. Чтобы было то же самое, пусть i = 0. Тогда в коде на первой итериции i = i + 1, и sum = 0 + 1. И пусть i < m, тогда на последней итерации i равно m-1, i = i + 1, то есть i равно m. И sum = sum + m. | + | Можно понять, что в первом коде sum = 1 + 2 + ... + m. |
− | {{question-ok|}} | + | * Чтобы было то же самое, пусть i = 0. |
+ | * Тогда в коде на первой итериции i = i + 1, и sum = 0 + 1. | ||
+ | * И пусть i < m, тогда на последней итерации i равно m-1, i = i + 1, то есть i равно m. И sum = sum + m. | ||
+ | {{question-ok|[[Участник:StasFomin|StasFomin]] 21:11, 18 декабря 2024 (UTC)}} | ||
− | + | [[Категория:Циклы]] |
Текущая версия на 21:11, 18 декабря 2024
Вопрос: Q19-08c765
Пусть все переменные целые и m >= 1.
Псевдокод 1:
sum = 0 for i = 1 to m sum = sum + i output ( sum )
Следующий псевдокод должен выполнять то же самое:
Псевдокод 2:
sum = 0 i = <initial value> while ( <condition> ) { i = i + 1 sum = sum + i } output ( sum )
Ответы
При каких значениях <initial_value> и <condition>, псевдокод 1 выдаст то же самое, что и псевдокод 2?
- 0 и i < m-1
- Правильный ответ: 0 и i < m
- 0 и i < m+1
- 1 и i < m
- 1 и i < m+1
Объяснение
Исходники — вопрос 19 на 24 странице книги «2011-gre-cs-practice-book.pdf»
Можно понять, что в первом коде sum = 1 + 2 + ... + m.
- Чтобы было то же самое, пусть i = 0.
- Тогда в коде на первой итериции i = i + 1, и sum = 0 + 1.
- И пусть i < m, тогда на последней итерации i равно m-1, i = i + 1, то есть i равно m. И sum = sum + m.