Автор | Сообщение |
|
Отправлено: 18.11.17 21:36. Заголовок: Проблема с номером 505(24) из варианта 19 в генераторе.
В пункте 2 просят подобрать такое трехзначное число N, при котором программа выведет верный ответ. В ответе указано число 102, хотя при вводе числа 100 ответ также получается верным. (Проверено в интерпретаторе Python 3.6) В пункте 3 просят исправить ошибки в программе. С подпунктом 1 из ответа согласен, с подпунктом 2 - не совсем. Удобнее и эффективнее по памяти исправить знак в условии цикла "while n >= 1:" на строгий (>), поскольку по условию программа должна удалять все единицы из исходного числа. Исправление, указанное в ответе ("d > 1" исправлено на "d <> 1" (!= в python)) не несет смысла, поскольку строгий знак и так подразумевает, что d не может быть равно единице. Кроме того, если d вдруг будет равным 0, программа прокрутит бесполезный цикл, потратив на это память.
|
|
|
Новых ответов нет
[см. все]
|
|
|
Отправлено: 19.11.17 15:55. Заголовок: Контрпример: для 120..
Контрпример: для 1205 Ваш вариант программы выведет 52 вместо 502. Удаляются и нули, если d>1.
|
|
|
|
| Администратор
|
Сообщение: 1534
|
|
Отправлено: 19.11.17 16:40. Заголовок: Фёдор пишет: В пункт..
Фёдор пишет: цитата: | В пункте 2 просят подобрать такое трехзначное число N, при котором программа выведет верный ответ. В ответе указано число 102, хотя при вводе числа 100 ответ также получается верным. |
|
По условию задачи можно указать одно любое число. Ко второму тезису уже привели контрпример. цитата: | если d вдруг будет равным 0, программа прокрутит бесполезный цикл, потратив на это память. |
|
Память тут вообще не при чём.
|
|
|
|
Отправлено: 19.11.17 20:10. Заголовок: Спасибо, проблема во..
Спасибо, проблема возникла из-за невнимательного прочтения задания
|
|
|
|