Задача тижня 10.12.12 – 16.12.12
Паліндром
Натуральне число називається паліндромом, якщо воно однаково читається з обох боків. Відомо, що з будь-якого числа можна отримати паліндром шляхом такої процедури: треба записати цифри числа у зворотному напрямку й додати отримане число до початкового; якщо результат додавання виявився не паліндромом, застосувати до нього ті ж дії; і так до тих пір, поки не отримаємо паліндром.
1. Створіть програму, яка для заданого числа N визначає кількість повторень описаної процедури, необхідну для отримання паліндрома.
Вхідні дані
Значення N – натуральне число, що не перевищує 232 , вводиться з клавіатури або задається як константа.
Вихідні дані (виводяться на екран чи зберігаються у файл)
Значення K– кількість кроків для отримання паліндрома з числа N, виводиться на екран.
2. Заповніть тестову таблицю за результатами роботи програми:
Номер тесту | N | K |
| 1 | 456 | 2 |
| 2 | 12321 | |
| 3 | 956 | |
| 4 | 3658 | |
| 5 | 98658 | |
| 6 | 65235 | |
| 7 | 9991 | |
| 8 | 56456259 | |
| 9 | 889977 | |
| 10 | 9874 |
Аналіз розв’язку задачі «Паліндром»
Введемо допоміжні змінні:
a – для зберігання поточного початкового числа;
b – для зберігання числа, що отримане з поточного записом цифр справа наліво.
Шукане значення K можна знайти за допомогою такого алгоритму:
Тестова таблиця з результатами роботи програми:
Номер тесту | N | K |
| 1 | 456 | 2 |
| 2 | 12321 | 0 |
| 3 | 956 | 2 |
| 4 | 3658 | 1 |
| 5 | 98658 | 41 |
| 6 | 65235 | 3 |
| 7 | 9991 | 7 |
| 8 | 56456259 | 2 |
| 9 | 889977 | 66 |
| 10 | 9874 | 3 |
Журі оцінило надіслані розв’язки наступним чином:
| № | Учасник | Кількість балів |
| 1 | RomaN | 3 |
| 2 | Юрий Дончик | 1 |
| 3 | Vitas Vitas | 2 |
| 4 | Сергій Сальніков | 3 |




