Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 当$b大于$a时,如何测试$a是否可被$b整除_Php_Math_Division_Modulus - Fatal编程技术网

Php 当$b大于$a时,如何测试$a是否可被$b整除

Php 当$b大于$a时,如何测试$a是否可被$b整除,php,math,division,modulus,Php,Math,Division,Modulus,我想知道一个字符串,$a,是否可以被另一个字符串,$b整除 我能找到的所有示例都告诉我如何使用模数,例如: if(($a %$b) == 0) : echo "Is dividible" ; endif; 但是,由于模数返回计算的剩余部分,因此如果$b大于$a,则这不起作用,因为仍然没有剩余部分 当$b有时(但并非总是)大于$a时,如何检查整除性?您可以使用下面给出的三元运算符示例 (($a%$b)==0)?echo "Is divisible": echo "not divisible";

我想知道一个字符串,$a,是否可以被另一个字符串,$b整除

我能找到的所有示例都告诉我如何使用模数,例如:

if(($a %$b) == 0) : echo "Is dividible" ; endif;
但是,由于模数返回计算的剩余部分,因此如果$b大于$a,则这不起作用,因为仍然没有剩余部分


当$b有时(但并非总是)大于$a时,如何检查整除性?

您可以使用下面给出的三元运算符示例

(($a%$b)==0)?echo "Is divisible": echo "not divisible";
那么:

echo ( ($a < $b) && (($a % $b) == 0) ) ? "Is dividible" : "Is not divisable" ;
echo($a<$b)和($a%$b)==0)?“可分割”:“不可分割”;

为什么不作为一个函数执行此操作:

function isDivisible($smaller,$bigger){
    //handle division by zero, and hmm.. let's cover negative numbers too
    if($smaller<=0) return false;
    if($smaller>$bigger) return false;
    return !($bigger % $smaller);
}
函数是可分割的($较小,$较大){
//处理零除,嗯……我们也来讨论负数
如果($较小$较大)返回false;
返回!($较大%$较小);
}

否定
应该是一种有效且优雅的处理方式。

试试这个,它应该有效:

$a = 7;
$b = 14;

//echo ( ($a > $b) && ( ($a % $b) == 0) ) ? "is divisible":"no divisible";

echo ( ($a < $b) && (($b % $a) == 0) ) ? "Is dividible" : "Is not divisable" ;
$a=7;
$b=14;
//回声(($a>$b)和($a%$b)==0))?“可分割”:“不可分割”;
回声(($a<$b)和($b%$a)==0))?“可分割”:“不可分割”;

如果($a%$b==0 | |$b%$a==0)
?您的意思是如果$a/$b将返回一个整数结果(没有余数)。。。。。如果$b大于$a,它将始终有一个余数`如果
$b>$a
不起作用,为什么不确保
$b
在该代码之前有一些if?嗯,@Federico的回答很直截了当。如果
$b>$a
,那么余数就是
$a
。你的公式是正确的。如果$a大于或等于$b=>测试模对零,否则=>不可除。如果$b大于$b,你将始终得到分数。你说的“找出是否可以除以”是什么意思?你是说除法返回一个整数吗?如果是这样的话,那么你所需要做的就是上面提到的。如果你的意思是说在极客语言中,一切都可以被除零以外的一切所除(被零除-错误)
$a = 7;
$b = 14;

//echo ( ($a > $b) && ( ($a % $b) == 0) ) ? "is divisible":"no divisible";

echo ( ($a < $b) && (($b % $a) == 0) ) ? "Is dividible" : "Is not divisable" ;