php模运算
⑴ php取余 8%(-2)
%是模运算,就是取余的意思。 8除-2 的-4 余0 ,所以是0了 这个说法是对的,只是他没说全,PHP在取余前,会先前将被除数四舍五入取整后再除的,所以,你上面的1.3,1.2之类的就都成了8%1了,余数肯定为0了,
⑵ 用两种PHP方法实现1到100之间偶数之和
<?php
echoone(1,100);//方法一:使用for结构
echo" ";
echotwo(1,100);//方法二:使用while结构
echo" ";
echothree(1,100);//方法三:使用do...while结构
echo" ";
echofour(1,100);//方法四:使用递归函数
/**
*使用for结构
*@paramint$start开始
*@paramini$end结束
*
*@returnint和
*/
functionone($start=0,$end=0){
//判断函数有效条件
if(($start==0&&$end==0)||($end<=$start))return0;
$num=0;
for($i=$start;$i<=$end;$i++){
if($i%2==0){//模运算
$num+=$i;
}
}
return$num;
}
/**
*使用while结构
*@paramint$start开始
*@paramini$end结束
*
*@returnint和
*/
functiontwo($start=0,$end=0){
//判断函数有效条件
if(($start==0&&$end==0)||($end<=$start))return0;
$num=0;
$i=$start;//初始化增量$i
while($i<=$end){
if($i%2==0){//模运算
$num+=$i;
}
$i++;
}
return$num;
}
/**
*使用do...while结构
*@paramint$start开始
*@paramini$end结束
*
*@returnint和
*/
functionthree($start=0,$end=0){
//判断函数有效条件
if(($start==0&&$end==0)||($end<=$start))return0;
$num=0;
$i=$start;
do{
if($i%2==0){//模运算
$num+=$i;
}
$i++;
}while($i<=$end);
return$num;
}
/**
*使用递归函数
*@paramint$start开始
*@paramint$end结束
*@paramint$i增量
*@paramint$num和
*
*@returnint和
*/
functionfour($start=0,$end=0,$i=0,$num=0){
//判断函数有效条件
if(($start==0&&$end==0)||($end<=$start))return0;
static$i=1,$num=0;//将增量变量$i与统计和的变量$num设为静态变量,保存每次计算后的结果并计入下一次计算中
if($i<=$end){
if($i%2==0){//还是模运算
$num+=$i;
$i++;
returnfour($start,$end,$i,$num);
}else{
$i++;
returnfour($start,$end,$i,$num);
}
}else{//$i>100,跳出递归,返回计算结果
return$num;
}
}
⑶ php 运算符:<html> <!程序名称:5-1.php> <!程序功能:PHP算术运算符的使用。> <head> <title>PHP算术运算
你的%号是除的可以用/来吧
除法运算符总是返回浮点数。只有在下列情况例外:两个操作数都是整数(或字符串转换成的整数)并且正好能整除,这时它返回一个整数。
取模运算符的操作数在运算之前都会转换成整数(除去小数部分)。
$a2=0.8/0.7;
就像是除0出错了
<html>
<!程序名称:5-1.php>
<!程序功能:PHP算术运算符的使用。>
<head>
<title>PHP算术运算符的使用</title>
</head>
<body>
<?php
//加法运算。
$a=3+5;
//减法运算。
$b=18-10;
//乘法运算。
$c=3*6;
//可以整除的运算。
$d=18/3;
//不可以整除的运算。
$e=10/3;
//整数的求模运算。
$a1=8%7;
//双精度型的求模运算。
//$a2=0.8%0.7;
$a2=0.8/0.7;
echo"加法运算:3+5=";
echo $a;
echo"<br>";
echo"减法运算:18-10=";
echo $b;
echo"<br>";
echo"乘法运算:3*6=";
echo $c;
echo"<br>";
echo"整数相除:18/3=";
echo $d;
echo"<br>";
echo"不能整除的运算:10/3=";
echo $e;
echo"<br>";
echo"整数的求模:8%7=";
echo $a1;
echo"<br>";
echo"双精度的求模:0.8%0.7=";
echo $a2;
echo"<br>";
?>
</body>
</html>
⑷ PHP 的问题
“%”是“取模运算”的意思,又称“求余运算”,本题就是 $i除以2后所得余数为0时输出$i,
即输出能被2整除的数字-----偶数。
⑸ php 如何判断整除
取模运算符两边必须为整数,你这个语句中包含了一个隐式转换,
if(5.3%1==0)这句中,%前的5.3被隐式转换成了5,因为取模操作符两边必须为整数,浮点数和字符串会被自动转化为整数
5.3%1运算结果为0 , 0==0为真,所以结果输出".00"
⑹ php中模运算是什么
php中模运算是%,x % y 就是指
x 除以 y 的余数,如下例所示:
⑺ php语言, 模数 和 余数 是不是一样的
假设a和b为整数:
如果a,b都是正整数的话,求模与求余没有区别。
如果a,b是一正一负或两个负整数:
求模运算时,a / b的结果向无穷小方向舍入,求余运算时a / b的结果向0方向舍入。
因此,求模时结果的符号与b一致,求余时结果的符号与a一致。
⑻ php里面的取模运算的范围是多少我试验了一下,被除数达到10位后就出错了 echo (3000000000%3); //输出-1
你要把数值设置成BIGINT类型,这样就不会出错了。BIGint 最大达27位.应该足够了吧
⑼ php中的取模的算法
算法是
90 / 22 = 4
余数是 4 所以 90对22取模之后的结果就是 4 也就是俩数相除的余数
90/22后得出4,然后再拿22乘以4得出88,再拿90减去88等于2