检查天气,用户定义的数字是PHP中的完美立方体或整数的立方体

时间:2015-10-31 15:24:36

标签: php

我需要查找给定的数字是否为整数的立方。

大学提问:设计一个PHP页面,检查输入的数字是否是PHP中整数的立方体。 在下面的程序中,is_float()无法检查$num2是否浮动。我不知道为什么。

<?php
$num=$_POST["t1"];
$num2=pow($num,1/3);
echo $num2."<br>";
$res=$num%$num2;
echo $res."<br><br>";
$test=is_float($num2);
echo "float ".$test."<br>";
var_dump(is_float($num2));

//if($num%$num2==0 || $num%$num2==1)
if (is_float($num2)==TRUE) {
  echo"<font color='FF0000' size='+2'>". $num. " is not Cube of an integer</font>";
} else {
  echo "<font color='FF0000' size='+2'>". $num. " is  a Cube of an integer</font>";
}
?>

1 个答案:

答案 0 :(得分:0)

我希望你的老师不会 Stack Overflow ;)

我只会给你一些建议,所以你可以自己找出答案。来吧,它并不难! 无论如何,我也发布了解决方案。

您是否尝试检查返回的号码类型:

pow(27, 1/3);

我的猜测是,当你要求他计算一个功率小于1的数字时,PHP总会返回一个浮点数,否则为整数。

解决方案:这里最好的是检查pow()的结果是否等于它自身的整个部分。你可以使用floor()函数(参见http://php.net/manual/function.floor.php):

// ...
$num2 = pow($num, 1/3);
$test = ($num2 == floor($num2))
// ...