Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Другие языки > Помогите сделать обратную программу. Паскаль


Автор: jura1006 23.11.2014, 16:25
Суть: мы вводим номер палиндрома и программа его выдает - палиндром - такие числа(начиная с 1 и выше) которые на оборот будет такими (111,121,9,99,898) нужно наоборот - я ввожу палиндром - программа его номер(по возрастанию) 



Var
N,i,k : Longint;

Function IntRevers(a : Longint) : Longint;
Var k : Longint;
Begin
k:=0;
While a>0 do
Begin
k:=k*10+(a mod 10);
a:=a div 10;
end;
IntRevers:=k;
end;

Function IsPali(B : Longint) : Boolean;
Begin
IsPali:=(B=IntRevers(B));
end;

Begin
readln(N); 
i:=0;
For k:=1 to 2147483647 do
Begin
If IsPali(k) then Inc(i);
If i=N then Break;
end;
If IsPali(k) then Writeln('Палиндром № ',i,' = ',k);
end.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)