2011-gre-cs-practice-book.pdf/Q25 — различия между версиями
Материал из DISCOPAL
StasFomin (обсуждение | вклад) |
|||
(не показана 1 промежуточная версия 1 участника) | |||
Строка 1: | Строка 1: | ||
− | |||
− | |||
== Вопрос: Q25-08c765 == | == Вопрос: Q25-08c765 == | ||
− | < | + | Дан следующий псевдокод |
− | + | <code-c> | |
− | + | // Precondition: ??? | |
− | + | x <- x + y | |
+ | y <- x - y | ||
+ | x <- x - y | ||
+ | // Postcondition: ((x == 3) and (y == 8)) | ||
+ | </code-c> | ||
− | + | Предполагая что x и y — целые числа, какое предусловие удовлетворяет данному постусловию? | |
− | + | ||
− | + | ||
− | + | ||
=== Ответы === | === Ответы === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | * (x == 3) and (y == 8) | ||
+ | * Правильный ответ: (x == 8) and (y == 3) | ||
+ | * (x == 8) and (y == 11) | ||
+ | * (x == 11) and (y == 3) | ||
+ | * (x == 11) and (y == 8) | ||
=== Объяснение === | === Объяснение === | ||
− | + | {{cstest-source|2011-gre-cs-practice-book.pdf|27|25}} | |
− | {{cstest-source|2011-gre-cs-practice-book.pdf| | + | |
− | + | ||
− | + | ||
− | + | Пойдем от обратного: | |
− | + | <code-c> | |
− | + | 3 <- x - 8 --> x == 11 | |
+ | 8 <- 11 - y --> y == 3 | ||
+ | 11 <- x + 3 --> x == 8 | ||
+ | </code-c> | ||
+ | Следовательно верный ответ (x == 8) and (y == 3) | ||
− | + | {{question-ok|[[Участник:StasFomin|StasFomin]] 12:28, 21 декабря 2024 (UTC)}} | |
− | + | [[Категория:Понимание кода]] |
Текущая версия на 12:28, 21 декабря 2024
Вопрос: Q25-08c765
Дан следующий псевдокод
// Precondition: ??? x <- x + y y <- x - y x <- x - y // Postcondition: ((x == 3) and (y == 8))
Предполагая что x и y — целые числа, какое предусловие удовлетворяет данному постусловию?
Ответы
- (x == 3) and (y == 8)
- Правильный ответ: (x == 8) and (y == 3)
- (x == 8) and (y == 11)
- (x == 11) and (y == 3)
- (x == 11) and (y == 8)
Объяснение
Исходники — вопрос 25 на 27 странице книги «2011-gre-cs-practice-book.pdf»
Пойдем от обратного:
3 <- x - 8 --> x == 11 8 <- 11 - y --> y == 3 11 <- x + 3 --> x == 8
Следовательно верный ответ (x == 8) and (y == 3)