国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

如何使用php循環(huán)判定水仙花數并打印全部水仙花

發(fā)布時(shí)間:2021-09-04 11:55 來(lái)源:億速云 閱讀:0 作者:小新 欄目: 開(kāi)發(fā)技術(shù)

這篇文章主要介紹了如何使用php循環(huán)判定水仙花數并打印全部水仙花數,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著(zhù)大家一起了解一下。

首先我們來(lái)看看什么是水仙花數?

水仙花數是一個(gè) 3 位數,它的每個(gè)位上的數字的 3次冪之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。

下面我們先來(lái)看看怎么判斷給定的一個(gè)三位數,它是不是水仙花數?

思路分析:

根據上文我們知道:一個(gè)數$num要是水仙花數,那么它要滿(mǎn)足: 個(gè)位的3次方+十位的3次方+百位的3次方= $num本身

那么我們可以先分解$num,得到個(gè)位$g、十位$s、百位$b

然后判斷  $g^3 + $^3 +$b^3 是不是等于$num

下面看看實(shí)現代碼:

<?php
header("Content-type:text/html;charset=utf-8");
function is_narcissistic ( $num ){
	$b= intval($num/100);
	$s= ($num/10)%10;
	$g= $num%10;
	
//	if($b*$b*$b+$s*$s*$s+$g*$g*$g==$num){  等價(jià)于 
	if(pow($b,3)+pow($s,3)+pow($g,3)==$num){
		echo $num."是水仙花數<br>";
	}else{
		echo $num."不是水仙花數<br>";
	}
}
is_narcissistic(153);
is_narcissistic(152);
?>

輸出結果:

上例中pow($b,3)$b*$b*$b是等價(jià)的,都可以計算$b的三次方($b^3)。pow(x,y)函數可以返回 x 的 y 次方,即x^y。

我們知道水仙花數是一個(gè) 3 位數,則它是有定額的,那么如何計算并輸出所有的水仙花數呢?這就需要使用循環(huán)了。

可以利用for循環(huán)來(lái)限定范圍在100~1000之間,寫(xiě)法:

<?php
header("Content-type:text/html;charset=utf-8");
$i=0;
for ( $num = 100; $num < 1000; $num++){
	$b= intval($num/100);
	$s= ($num/10)%10;
	$g= $num%10;
	
	if(pow($b,3)+pow($s,3)+pow($g,3)==$num){
		echo $num."<br>";
		$i++;
	}
}
echo "水仙花數共有 $i 個(gè)";
?>

看看輸出結果:

除了上面計算并輸出所有水仙花數的方法,還可以使用3個(gè)for循環(huán)遍歷每一位來(lái)輸出所有水仙花數:

<?php
header("Content-type:text/html;charset=utf-8");
$i=0;
for($q=1;$q<=9;$q++){
    for($w=0;$w<=9;$w++){
      for($e=0;$e<=9;$e++){
        if($q*$q*$q + $w*$w*$w + $e*$e*$e ==
         100*$q + 10*$w + $e){
           echo "$q $w $e "."<p>";
		   $i++;
        }
      }
    }
}
echo "水仙花數共有 $i 個(gè)";
?>

看看輸出結果:

可以看出,輸出結果是一樣的。

可以看出,我們在for循環(huán)的循環(huán)體中,使用一個(gè)計數器$num,在每次輸出一個(gè)三位回文數后,自增1,這樣就可以統計出100~999內有多少回文數了。

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系QQ:712375056 進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。

php
国产精品亚洲一区二区三区在线| 免费精品99久久国产综合精品| 欧美乱妇狂野欧美在线视频| 精品人妻av区| 欧美狂野乱码一二三四区| 成人毛片AV免费|