PHP:在双重OR条件下做



如果$sell大于$buy$k小于0.5,我会停止一段时间

$high = 0.002420;
        $buy = 0.0024123;
        $k = 1;
        do {
            $sell = $buy + ( ( $buy * $k ) / 100 );
            echo '<p>'.$sell.' con k = '.$k.'</p>';
            $k = $k-0.1;
        } while ( ( $k >= 0.5 ) || ( $sell > $high ) );

在我的示例中,循环需要在第一次迭代后停止。相反,当$sell小于$high时执行,省略第一条件(k不能低于0.5(。

$sell is 0,002436423 con k = 1
$sell is 0,0024340107 con k = 0,9
$sell is 0,0024315984 con k = 0,8
$sell is 0,0024291861 con k = 0,7
$sell is 0,0024267738 con k = 0,6
$sell is 0,0024243615 con k = 0,5
$sell is 0,0024219492 con k = 0,4
$sell is 0,0024195369 con k = 0,3

谢谢

如果您想在

$sell > $high时停止,那么您希望在不正确继续

另外:当 A B 为真时停止等同于在(不是 A(和(不是 B(为真时继续。

一开始你写了"如果$sell大于$buy或$k小于0.5,我会停下来一会儿"..所以你应该$buy与$sell进行比较,你已经$sell与$high

试试这个:

while ( ( $k >= 0.5 ) and ( $sell <= $buy ) );

最新更新