/
akryukov
/
programming-basics
Обзор
Документация
Войти
/
akryukov
/
programming-basics
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/lab09/task2523.html
528 строк
25 KB
Alexander Kryukov
add transfusion tasks
09 апр 2020, 21:31
09 апр 2020, 21:31
ba9a12e
Код
Авторство
О чём код?
<div id="task2523" class="task_block empty_on_print"> <div class="task_id">2523</div> <h3>Задача</h3> <div class="task_desc">Даны две ёмкости объемом 5 и 8 литров. Изначально они пустые. Пользователь должен выбирать действия так, чтобы в какой-нибудь из ёмкостей получилось 4 литра. Программа отображает список осмысленных действий. Полный список действий: <ol> <li>Налить из крана в маленькую ёмкость</li> <li>Налить из крана в большую ёмкость</li> <li>Налить из маленькой ёмкости в большую</li> <li>Налить из большой ёмкости в маленькую</li> <li>Вылить из маленькой ёмкости в раковину</li> <li>Вылить из большой ёмкости в раковину</li> </ol> Бессмысленными считаются действия, которые не изменят содержимое ёмкостей: <ul> <li>Вылить из пустой ёмкости</li> <li>Налить в полную ёмкость</li> </ul> Получившийся список действий должны быть пронумерован по порядку от 1 до конца с шагом 1. Пользователь вводит число - номер действия. После этого, программа должна определить, сколько воды получится в ёмкостях после выполнения действия с указанным номером. Переливание происходит "до краев". Излишки остаются в исходной ёмкости. Полученные значения нужно вывести на экран. Если в какой-нибудь емкости получается 4 литра, то вывести сообщение "головоломка решена". В ином случае, нужно сформировать следующий список действий для пользователя. В конце нужно вывести на экран количество действий, за которое пользователь решил задачу. При вводе некорректных номеров действий, количество действий увеличиваться не должно. </div> <table class="check_values"> <tr> <th>Номер теста</th> <th>Вводимые данные (по одному числу за раз)</th> <th>Результат</th> </tr> <tr id="task2523test1"> <td><a href="#task2523test1">покрасить</a></td> <td class="preformatted">2 2 3 3 2 2 3 3 3 3 2 2</td> <td class="preformatted">Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость Выбрано действие: 2 Стало: в маленькой 0 из 5, в большой 8 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из большой ёмкости в маленькую 3. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 5 из 5, в большой 3 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 3 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 3 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из маленькой ёмкости в большую 4. Вылить из маленькой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 3 из 5, в большой 8 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из большой ёмкости в маленькую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 5 из 5, в большой 6 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 6 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 5 из 5, в большой 1 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 1 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 1 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из маленькой ёмкости в большую 4. Вылить из маленькой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 1 из 5, в большой 8 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из большой ёмкости в маленькую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 5 из 5, в большой 4 из 8 Головоломка решена за 12 действий</td> </tr> <tr id="task2523test2"> <td><a href="#task2523test2">покрасить</a></td> <td class="preformatted">1 2 1 2 4 3 1 2 1 2</td> <td class="preformatted">Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 0 из 5, в большой 5 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 5 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 2 из 5, в большой 8 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из большой ёмкости в маленькую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 4 Стало: в маленькой 2 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из маленькой ёмкости в большую 4. Вылить из маленькой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 2 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 2 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 0 из 5, в большой 7 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 7 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 4 из 5, в большой 8 из 8 Головоломка решена за 10 действий</td> </tr> <tr id="task2523test3"> <td><a href="#task2523test3">покрасить</a></td> <td class="preformatted">3 4 5 0 1</td> <td class="preformatted">Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость Выбрано действие: 3 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 4 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 5 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 0 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину</td> </tr> <tr id="task2523test4"> <td><a href="#task2523test4">покрасить</a></td> <td class="preformatted">3 3 3 3 3 3 1 2 1 2 4 3 1 2 1 2</td> <td class="preformatted">Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость Выбрано действие: 3 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 3 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 3 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 3 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 3 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 3 Номер действия должен быть цифрой от 1 до 2 включительно Стало: в маленькой 0 из 5, в большой 0 из 8 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 0 из 5, в большой 5 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 5 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 2 из 5, в большой 8 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из большой ёмкости в маленькую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 4 Стало: в маленькой 2 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из маленькой ёмкости в большую 4. Вылить из маленькой ёмкости в раковину Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 2 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 2 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 0 из 5, в большой 7 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 7 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину Выбрано действие: 2 Стало: в маленькой 4 из 5, в большой 8 из 8 Головоломка решена за 10 действий</td> </tr> <tr id="task2523test5"> <td><a href="#task2523test5">покрасить</a></td> <td class="preformatted">1 3 1 3 1 3 1 2 1 2 4 3 1 2 1 2</td> <td class="preformatted">Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 1 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 3 Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 1 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 3 Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 1 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 3 Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 1 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 2 Выбрано действие: 2 Стало: в маленькой 0 из 5, в большой 5 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину 1 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 5 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину 2 Выбрано действие: 2 Стало: в маленькой 2 из 5, в большой 8 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из большой ёмкости в маленькую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину 4 Выбрано действие: 4 Стало: в маленькой 2 из 5, в большой 0 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из маленькой ёмкости в большую 4. Вылить из маленькой ёмкости в раковину 3 Выбрано действие: 3 Стало: в маленькой 0 из 5, в большой 2 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину 1 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 2 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину 2 Выбрано действие: 2 Стало: в маленькой 0 из 5, в большой 7 из 8 Введите номер действия: 1. Налить из крана в маленькую ёмкость 2. Налить из крана в большую ёмкость 3. Налить из большой ёмкости в маленькую 4. Вылить из большой ёмкости в раковину 1 Выбрано действие: 1 Стало: в маленькой 5 из 5, в большой 7 из 8 Введите номер действия: 1. Налить из крана в большую ёмкость 2. Налить из маленькой ёмкости в большую 3. Вылить из маленькой ёмкости в раковину 4. Вылить из большой ёмкости в раковину 2 Выбрано действие: 2 Стало: в маленькой 4 из 5, в большой 8 из 8 Головоломка решена за 16 действий </tr> </table> </div>