前回の記事「PHPプログラムで3桁の回文をすべて出力する方法」では、一般的な3桁の回文の判定方法と出力方法を紹介しました。 . 100~999 の回文の数、回文の数を数える方法、興味のある友達はそれについて学ぶことができます~
この記事では引き続き、PHP で回文の数を決定する方法を示します。範囲に制限はありません。任意の数値が与えられた場合、その数値が回文であるかどうかを判断します。
私の実装方法を見てみましょう:
<?php header("Content-type:text/html;charset=utf-8"); function hws($num) { if($num==strrev($num)){ echo $num."是一个回文数<br><br>"; }else{ echo $num."不是一个回文数<br><br>"; } } hws(5); hws(11); hws(12); hws(212); hws(213); hws(1515); hws(15151); ?>
出力結果は次のとおりです:
上記の例では、文字列を反転できる PHP 組み込み関数 strrev() があり、この関数を使用すると、数値 (例 213) を文字列 "321" に反転できます。
次に、「==
」演算子を使用して、数値 213 と文字列「321」が等しいかどうかを比較します。これらは明らかに等しくなく、したがって 213 は回文数値ではありません。
等価 (==) 演算子によって実行される比較は緩やかです。データ型ではなく、両側の変数の値のみを比較します。2 つの値が一致する場合、 2 つの値が同じである場合は true 値が返され、2 つの値が同じでない場合は false 値が返されます。
そうではありませんか。非常に簡単で、上記ほど多くの計算は必要ありません。
さらに難しくして、指定された範囲内のすべての回文の数字を出力し、回文の数を数えてみましょう。まず、100 以内のすべての回文番号を試します:
<?php header("Content-type:text/html;charset=utf-8"); $num=0; for($i=0;$i<100;$i++){ if($i==strrev($i)){ echo $i." "; $num++; } } echo "<br><br>100以内的回文数共有".$num."个"; ?>
出力結果:
次に、100 ~ 1000 の間のすべての回文番号
<?php header("Content-type:text/html;charset=utf-8"); $num=0; for($i=100;$i<1000;$i++){ if($i==strrev($i)){ echo $i." "; $num++; } } echo "<br><br>100~1000间的回文数共有".$num."个"; ?>
出力結果:
ok、関数関数にカプセル化されました:
<?php header("Content-type:text/html;charset=utf-8"); function hws($a,$b) { $num=0; for($i=$a;$i<$b;$i++){ if($i==strrev($i)){ echo $i." "; $num++; } } echo "<br><br>$a ~ $b 间的回文数共有".$num."个<br><br><br>"; } hws(0,100); hws(100,1000); ?>
出力結果:
はい、以上です。他に知りたいことがあれば、これをクリックしてください。 → →phpビデオチュートリアル
以上がPHP 関数を使用して数値を反転し、指定された範囲内のすべての回文数値を出力する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。