|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Найти все палиндромы (перевертыши)?
Господа, прошу вашей помощи в решении следующей задачи:
Нужно найти все палиндромы (http://ru.wikipedia.org/wiki/Палиндром), для которых их квадраты также палиндромы (в заданном интервале от a до b). Буду рад любой помощи в решении этой задачи... |
#2
|
|||
|
|||
В цикле от a до b берешь число и проверяешь, является ли оно палиндромом. Если да, то возводишь в квадрат и опять проверяешь. Все. задача решена. Проверка - перевод в строку и сравнение на равенство прямой и обрашенной (с заду наперед) строки.
|
#3
|
|||
|
|||
Не затруднит представить код?
|
#4
|
|||
|
|||
Код:
program Project2; {$APPTYPE CONSOLE} uses SysUtils; function palind(a:integer):boolean; var i,j,e,d:integer;s,s1:string; begin s1:=inttostr(a); for i:=length(inttostr(a)) downto 1 do s:=s+s1[i]; if s=s1 then palind:=true else palind:=false; end; var a,b,i:integer; begin readln(a,b); for i:=a to b do if (palind(i)=true)and(palind(i*i)=true) then write(i,' '); readln end. вроде как-то так... |