PHPのブレークループ

WBOY
リリース: 2016-06-20 12:43:10
オリジナル
1404 人が閲覧しました

専門家にループの違いを説明してもらえますか?特に b/c の違いがよくわかりません
A
for($i = 1;$i <= 10; $i++ ){
for( $j = 1;$j <= 10;$j++){
$m = $i * $i + $j * $j;
echo "$mn
"; >if ($m <90 || $m > 190) {
break 2;
}
}
}
?>// 2
B
< ;?php
for($i = 1;$i <= 10; $i++ ){
for($j = 1;$j <= 10;$j++){
$m = $i * $i + $j * $j;
echo "$mn
";
if($m < 90 || $m > 190) {
ブレイク ;
}
}
}/ /2 5 10 17 26 37 50 65 82 101
104 109 116 125 136 149 164 181 200
C
for($i = 1;$i <= 10; $i++ ){
for($j = 1;$j <= 10;$j++){
$m = $i * $ i + $j * $j;
echo "$mn
"
}
// 2 5 10 17 26 37 50 65 82 101
5 8 13 20 29 40 53 68 85 104
10 13 18 25 34 45 58 73 90 109
17 20 25 32 41 52 65 80 97 116
26 29 34 41 50 61 74 89 06 1 25
37 40 45 52 61 72 85 100 117 136
50 53 58 65 74 85 98 113 130 149
65 68 73 80 89 100 113 128 145 164
82 85 90 97 106 117 130 145 162 181
101 104 109 116 125 136 149 164 181 200


ディスカッションへの返信 (解決策)

C は

a14cf23c78af10498dbf4fc4f733fdaf 二重ループの詳細な説明をインターネットから抜粋し、同じ疑問を持つ友人に提供します
public static void main(String[] args)

{

for(int i=0①;i<= 5②;i++③)
{
④for(⑤int j=0;⑥j<=5 ;⑦j++)
{
⑧if(j System.out.print( " ");
⑨if(j>=i)
System.out.print("* ");
⑩System.out.println(); }
まずプログラムは①を実行し、i を初期化して値 0 を割り当てます。次に、i が 5 以下であるかどうかを判断し、5 以下の場合は④の for ループを実行します。この for ループでは、まず変数 j が初期化されて値 0 が代入され、次に j が 5 以下であるかどうかが判断され、i=j なので * が出力されます。 , 次に、⑦を実行して j++ を変更すると、j= 1 になります。次に、⑥を実行して、j が 5 以下であるかどうかを判断します。5 以下の場合は、j=1 であるため、⑨を実行します。 =0, j>i, * と出力され、このように判定を続けます。j= 5 のときは 5 に等しいので、⑨を実行し、* を出力し、このとき j++ となります。 j が 5 より大きい場合は、for ループ④から抜け出して、その後のコードを実行して改行を出力し、その後、for ループの③、i++ を実行し、i=1 になり、次に②を実行します。 iが5以下かどうかを判定します。5以下であれば2回目のforループ④を実行し、以降はi++=6になるまで上記と同様の処理を実行し、iが5より大きいと判断します。 、これでプログラムは終わりです。ここでのポイントは、①や⑤などの代入は一度だけ実行され、それ以外は判定結果に応じて実行されるということです。

2 重ループから抜け出す上記の例:
for($i = 1;$i <= 10; $i++ ){
for($j = 1;$j <= 10 ;$j++){
$m = $i * $i + $j * $j;
echo "$m ";
if($m <90 || $m > 190) {
ブレーク 2;
}
}
echo '
';//
何回印刷すればよいですか?
}
次のコードに置き換えます:
for($i = 1;$i for($j = 1;$j $m = $i * $i + $j * $j;
echo "$m ";
if($m 190) {
Break 2;
}
}
echo 'printtimes';//結果はまだ 2
}
-- いわゆる 2 つのループからの脱出とは、 2 番目のループから飛び出す ループから飛び出すか、合計 2 つのループから飛び出すか、またはすべてのループから飛び出すか?
専門家にアドバイスを求める

2 番目のループから抜け出しましたが、最初のループのエコー 'printtimes' を実行し続ける必要がありますか?

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート