echo "The smallest multiple of 225 that is only 1's and 0's is: ";
$multiple = (integer) 225;
$factor = (integer) 1;
while (!isDecimalBinary($multiple))
{
$multiple += 225;
$factor += 1;
}
echo $multiple.':'.$factor;
function isDecimalBinary($number)
{
$stringNumber = (string) $number;
$arrayNumber = str_split($stringNumber);
foreach ($arrayNumber as $item)
{
if ($item != '0' || $item != '1')
{
return FALSE;
}
}
return TRUE;
}
我累了。晚了。我无法确定错误在哪里。 另外,如果有任何数学技巧来查找十进制数是否都是二进制数字,我会很高兴找到一种耗时较少的方法。PHP:225的全部1和0的最小倍数
$ arrayNumber =爆炸($ stringNumber);你在哪个基础上爆炸? – Arvind 2013-03-28 06:00:33
你知道它不能是255,765等。所以从510开始,一次增加510。 – 2013-03-28 06:01:26
http://ideone.com/21baui – Musa 2013-03-28 06:09:23