Задание:
1. Разработать алгоритм решения задачи и оформить его в виде блок-схемы
2. Написать на основании разработанного алгоритма программу, в которой каждый пункт задания оформить в виде отдельной внешней функции
3. Провести тестирование программы с различными начальными значениями:
• Не допустимых
• Допустимых (различных 2-4 варианта)
• Граничных
4. Ввод всех неизвестных значений должен осуществляться с клавиатуры
5. Результаты выполнения программы необходимо выдать на экран и в файл
Игра «Пуговицы»
Правила игры очень просты. Перед двумя играющими находится кучка из K пуговиц. Играющие по очереди берут пуговицы из кучки, причем за один ход каждый из них может взять от 1 до L пуговиц. Выигрывает тот из спортсменов, которому удастся взять последнюю пуговицу.
Тот из игроков, которому по жребию выпадает делать первый ход, получает возможность собственноручно назначить число K. Тот из игроков, который будет ходить вторым, выбирает, в свою очередь, число L.
Вам необходимо определить наилучшую стратегию для участника, который ходит вторым.
Входные данные
натуральное число K (1 ≤ K ≤ 108) – общее количество пуговиц.
Выходные данные
необходимо вывести целое число L (2 ≤ L < K) — максимальное количество пуговиц, которое можно взять за один ход, обеспечивающее победу второму игроку. Если таких чисел несколько, то следует вывести все. Если таких чисел нет, то следует вывести число 0.
1. Разработать алгоритм решения задачи и оформить его в виде блок-схемы
2. Написать на основании разработанного алгоритма программу, в которой каждый пункт задания оформить в виде отдельной внешней функции
3. Провести тестирование программы с различными начальными значениями:
• Не допустимых
• Допустимых (различных 2-4 варианта)
• Граничных
4. Ввод всех неизвестных значений должен осуществляться с клавиатуры
5. Результаты выполнения программы необходимо выдать на экран и в файл
Игра «Пуговицы»
Правила игры очень просты. Перед двумя играющими находится кучка из K пуговиц. Играющие по очереди берут пуговицы из кучки, причем за один ход каждый из них может взять от 1 до L пуговиц. Выигрывает тот из спортсменов, которому удастся взять последнюю пуговицу.
Тот из игроков, которому по жребию выпадает делать первый ход, получает возможность собственноручно назначить число K. Тот из игроков, который будет ходить вторым, выбирает, в свою очередь, число L.
Вам необходимо определить наилучшую стратегию для участника, который ходит вторым.
Входные данные
натуральное число K (1 ≤ K ≤ 108) – общее количество пуговиц.
Выходные данные
необходимо вывести целое число L (2 ≤ L < K) — максимальное количество пуговиц, которое можно взять за один ход, обеспечивающее победу второму игроку. Если таких чисел несколько, то следует вывести все. Если таких чисел нет, то следует вывести число 0.