Алгоритм определения полиндрома

Тема в разделе "Свободное общение", создана пользователем @rtem, 26 мар 2009.

  1. @rtem

    @rtem Гость

    Кто-нибудь может растолковать алгоритм определения палиндромов (целых 5 значных чисел: 55555, 12321 и тд), без перевода чисел в строку, а используя операции деления и вычисления остатка.?

    буду очень призннателен.
     
  2. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    на пальцах

    456 % 10 = 6
    456 / 10 = 45

    45 % 10 = 5
    45 / 10 = 4

    4 % 10 = 4
    4 / 10 = 0 - закончили

    дальше дело техники=)
     
  3. @rtem

    @rtem Гость

    456 не палиндром.
     
  4. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    это алгоритм разбиения на цифры десятиричного числа. как добавить их коллекцию и проверить на симметричность имхо должно быть очевидно
     
  5. @rtem

    @rtem Гость

    ммм это ясно, но есть одно но. я не думаю, что задание в теме "Управляющие структуры" подразумевает использование коллекций.
     
  6. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    типа flow control statement?
    тогда подразумевает, хранение и управление - темы как бы перпендикулярные
     
  7. @rtem

    @rtem Гость

    нужно реализовать этот алгоритм пользуясь арифметические/логические операции и управляющие структуры (if, for, while....) вот я очем.
     
  8. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    тогда первым проходом считаешь разрядность числа.
    вторым проходом цифры которые до середины прибавлешь к счетчику, цифры которые после отнимаешь, если число разрядов нечетное, центральную цифру пропускаешь, если счетчик будет равен нулю значит полиндром.
     
  9. @rtem

    @rtem Гость

    все сделал. по твоему спервому совету.

    ну и со структурами if, for, while))
     
Загрузка...

Поделиться этой страницей