C++ のループには変更がありません。while ループ、 do-whileループ、 forループの 3 種類があり、 breakとcontinueの使用方法に違いはありません。このパートの文法の概念を学び、定着させるための質問です。
トレーニング グラウンドの質問 1143 を見てみましょう。これは素数の概念を理解した後、数値 N について 2 から N-1 まで順番に試行して、次のことを判断する必要があることは明らかです。それは N で割り切れます。 検索 N で割り切れる因数があるかどうかを調べます。因数がない場合は素数です。それ以外の場合は、明らかに C++ コードです。は次のとおりです。
#include<iostream>usingnamespacestd;intmain(){intn,i;cin>>n;for(i=2;i<n;i++){if(n%i==0)break;}if(i>= n)cout<<1<<endl;elsecout<<0<<endl;return0;}
テスト実行結果は次のとおりです。
古いルールでは、コードを直接入力してローカルでテストし、提出が通過した後に続行しても問題ありません。
次に、C++ のループに関するもう 1 つの質問を見てみましょう。ACM コンテストでは比較的よくある質問なので、これも練習場にある質問 1085 の合計を求める簡単な質問です。 A+B ですが、複数のテストデータをループで受け付けます。C++ の記述方法は次のとおりです。
#include<iostream>usingnamespacestd;intmain(){inta,b;while(cin>>a>>b){cout<<a+b<<endl;}return0;}
ランニング効果は以下の通りです。
whileループ内の条件はcinステートメントとして記述されることに注意してください。なぜこのように記述できるのでしょうか。原理は C 言語の while(scanf(%d%d,&a,&b)==2) とまったく同じで、戻り値、つまりcinの戻り値を判断します。 cin はistreamストリームを返しますが、問題が発生して受信に失敗した場合はfalseが返され、ループが終了します。
必ずご自身のコンピュータでテストし、トレーニング グラウンドで C++ を使用して質問 1085 ~ 1092 を完了してください。