Помощь - Поиск - Пользователи - Календарь
Полная версия: Задача по определению палиндрома.
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
ADs
Определить, явдяется ли заданное натуральное число палиндромом, т.е. таким, десятичная запись которого читается одинаково слева направо и справа налево.
Массивы использовать нельзя (только циклы).
Camel_Toe
ну ты и ламер, такую задачу я в классе девятом уже мог решить.....
GLuk
2Camel_Toe: А ты случаем сам не ламер? >:( Я вот, например, асм знал уже в 10 классе, но я же этим не выпендриваюсь. Может быть он учится в 5 классе, ты не думал об этом? А вот этой своей фразой, ты по-моему ставишь себя намного выше ADs.
Во-всяком случае можно было спросить, что он уже сделал или типа того, но без оскорблений...
___ALex___
я тоже хотел об этом сказать...
___ALex___
Код
function IsPolindrom(const N: Integer): Boolean;
var
i: Byte;
S: String;
begin

IsPolindrom := False;
Str(N, S);
for i := 1 to Length(S) div 2 do
if S[i] <> S[Length(S) - i + 1] then Exit;
IsPolindrom := True

end;
ADs
Pascal  я начал изучать всего месяц назад и не знал такого оператора, как Length. Это и вызвало мое затруднение в этой задаче, т.к. не мог определить кол-во символов в числе. Сейчас я уже разобрался, поэтому БОЛЬШОЕ СПАСИБО!
trminator
Кстати, строка тоже массив... а массивы использовать нельзя
___ALex___
trminator
так-то да, но там скорее имелись ввиду "обычные" массивы(те что объявляются словечком Array)
а если выделять цифры из цисла(дык в строку не преобразовывать)
- это будет медленней, ИМХО
ADs
Нашел в нете решение без Length:
Код
program Palindrom;
var k,n,m:longint;
begin
 write('vvedite chislo  ');
 readln(n);
 m:=n; k:=0;
    while m div 10<>0 do {sobiraem chislo v obratnom poryadke}
    begin
    k:=k*10+m mod 10;
    m:=m div 10
    end;
 k:=k*10+m mod 10;
 if k=n then writeln('palindrom')
      else writeln('no palindrom');
 readln;
end.
___ALex___
ADs
я ж писал, что можно, только медленней это
AlaRic
Camel_Toe: за собой лучше следи, а других участников не суди!
Camel_Toe
не суди сам, да не судим будишь.....
Nightmare
2 Camel_Toe:
А Вам Мама в детстве не говорила, что спорить с SysAdmin'ом - неприлично?
error_404
Цитата
2 Camel_Toe:
А Вам Мама в детстве не говорила, что спорить с SysAdmin'ом - неприлично?

и опасно для жизни? ;-)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.