Способ решения через функции . Задача об определении палиндромности произвольного числа.
Primary tabs
Cпособ решения через функции .
<?php
echo "<BR>","Задача №38 : определить является ли число палиндромом.
Особенность задачи в том , что при количестве цифр числа, большем , чем
10 знаков , программа не работает - причина , электромагнитное воздействие нло ." ,"<BR>";
//Вводим число
$a = 11111111111;
echo "<BR>","Введенное вами число : ",$a,"<BR>" ;
$count=1;
// Определим число разрядов числа
// Функция pow (10,$i) процесс возведения
// числа 10 в степень $i
for ($i=1 ; $a/pow (10,$i)>=1 ; $i++)
{
$count++ ;
}
echo "<BR>" , "Число разрядов числа-",$a,", равно:",$count,"<BR>";
// Число разрядов определили , теперь организуем процесс определения
// палиндромности числа $a , а именно , равенство первого и последнего числа
// второго и предпоследнего , третьего и препредпоследнего и т.д. Поехали!
// Пишем код для случая чётного количества цифр
function F ($i)
{
// Определение правого числа
$rightfigure= floor(($a% pow(10,$i))/pow(10,$i-1));
// Определение левого числа
$leftfigure =floor($a/ pow(10,$count-$i)) % 10 ;
// Проверка равенства левого и правого числа
if ( $leftfigure==$rightfigure)
{
}
else
{
echo "<H1>Число не палиндром</H1>" ;
break;
}
return $count;
}
if ($count % 2 ==0 )
{
for ($i=1 ; $i <= ($count/2) ; $i++ )
{
F($i);
}
}
// Это код для случая нечётности числа
else
{
for ($i=1 ; $i < (($count-1)/2)+1 ; $i++ )
{
F ($i);
}
}
?>
- Log in to post comments
- 6242 reads
vedro-compota
Thu, 10/08/2015 - 10:23
Permalink
- причина , электромагнитное
воздействие сохраняется? если да - то начните отладку кода. И отформатируйте его.
_____________
матфак вгу и остальная классика =)
vedro-compota
Thu, 10/08/2015 - 10:33
Permalink
Вижу, что уже ответили здесь.
Вижу, что уже ответили здесь.
В следующий раз приводите пожалуйста текст возникающей ошибки (т.н. "сообщение об ошибке"). Там, кстати, часто сразу и пишется причина.
_____________
матфак вгу и остальная классика =)
vedro-compota
Thu, 10/08/2015 - 12:59
Permalink
в этот раз тоже укажете
_____________
матфак вгу и остальная классика =)