| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [Java] Палиндромы |
| Автор: SERJ2006 24.1.2012, 19:21 | ||
| Условие: Получить все меньшие 10^6 натуральные числа, которые являются палиндромами (его запись читается одинаково с начала и с конца) как в десятичной, так и в двоичной системах. Текс программы:
Мне нужно чтобы она выводила все числа в этом диапазоне палиндромы в двоичной и десятичной системах счисления. Но она не доделана, я запутался. Помогите доделать пожалуйста и исправить. Спасибо за внимание. |
| Автор: jk1 24.1.2012, 20:40 |
| Для домашних заданий, курсовых, существует "Центр Помощи". Тема перенесена! |
| Автор: Mirkes 25.1.2012, 13:30 |
| Метод toBinaryString принадлежит объекту Integer. |
| Автор: Mirkes 26.1.2012, 13:43 | ||
Мне понравилась задачка и я ее решил.
Можно увеличивать разрядность. Все равно таких дваждв палиндромов мало. |
| Автор: SERJ2006 26.1.2012, 14:49 | ||
а я все- таки поступил так:
|
| Автор: Mirkes 26.1.2012, 18:43 |
| Согласен. Ваше решение хорошо тем, что дает числа в порядке возрастания. Однако, многократная проверка чисел, которые заведомо не могут быть палиндромами является излишней тратой времени. Если сравнить наши методы по скорости, то Ваш окажется существенно более медленным. Я запустил свой на числах от 0 до 1.000.000.000 - работал около 1с Ваш снял после полутора минут. Проверялись еще восьмизначные числа. То есть по грубой оценке - порядка 20 минут. Еще одна ошибка в моем алгоритме - я вывел ноль. Не стоило, посколку он не натуральное число. Я не внимательно прочитал условие. Эта ошибка легко устраняется. А вот получить числа в порядке возрастания моим алгоритмом нельзя. Разве что потом сортировать. |