我希望我的程序确定用户输入的两个整数是否是奇数,偶数和完美的正方形。
到目前为止,这是奇数和偶数:
<?php
$number = [$_POST["number_1","number_2" ];
for ($i=0; $i<10; $i++){
if ($i %2==0);{
echo "$i is even. <br>";
}
else {
echo "$i is odd. <br>";
}
}
所以它会显示:
x是奇数 x甚至是 等
但是如何添加代码以确定它是否是一个完美的正方形呢?如果它是一个完美的正方形,我希望它显示如下:
x是偶数和完美的正方形
答案 0 :(得分:2)
sqrt()
将返回一个浮点数,因此要检查它是否为整数,这使得它成为一个完美的正方形,您可以将其结果与floor()
相同。
if (sqrt(9) == floor(sqrt(9)))
echo "9 is a perfect square";
live demo告诉您这是有效的。
所以对你来说,那就是
for ($i=0; $i<10; $i++){
if ($i %2==0) {
echo "$i is even";
}
else {
echo "$i is odd";
}
if (sqrt($i) == floor(sqrt($i)))
echo " and is a perfect square";
echo ".<br />";
}
答案 1 :(得分:1)
有一个功能:gmp_perfect_square。对于您的代码:
for($i=0; $i<10; $i++){
if($i %2 == 0){
echo "$i is even";
}else{
echo "$i is odd";
}
echo gmp_perfect_square($i) ? ' and a perfect square.<br>' : '.<br>';
}
输出:
0是均匀的,是一个完美的正方形 1是奇数和完美的正方形 2是偶数 3是奇怪的 4是均匀和完美的正方形 5是奇数 6是偶数 7是奇怪的 8是偶数 9是奇数和完美的正方形。
答案 2 :(得分:-1)