break文とcontinue文
スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
breakとcontinueの例を見るために、前のページ(while文でのループ・繰り返し)で、例に出したフィボナッチ数列を少し書き換えてみます。
スポンサーリンク
break文
break文を用いると、ループ処理から、任意の条件成立時に抜け出し、繰り返しを終了できます。
#include <iostream> int prev_num; // 一つ前の数字 int cur_num; // 現在の数字 int next_num; // 次の数字 int main() { prev_num = 1; cur_num = 1; std::cout << cur_num << "\n"; while (true) { std::cout << cur_num << "\n"; next_num = prev_num + cur_num; prev_num = cur_num; cur_num = next_num; if (cur_num > 100) { break; } } return(0); }
今回は、「while (true)」となっている点が要注意です。
whileの条件は、常に真(true)なので、break文でループを脱出しない限り、無限ループとなってしまいます。
「if (cur_num > 100)」で、数列の数字が100より大きくなったら、breakを実行し、ループを抜け出し終了する命令を与えています。
実行結果。
1 1 2 3 5 8 13 21 34 55 89
continue文
今度は、continue文です。
continueは、任意の条件成立時に、ループ中の残りの処理をスキップして、ループの先頭に戻ります。
フィボナッチ数列のうち、偶数のフィボナッチ数をスキップ(continue)し、奇数のフィボナッチ数のみを表示するプログラムを書いてみます。
フィボナッチ数が100より大きくなったら、breakで終了させます。
#include <iostream> int prev_num; // 一つ前の数字 int cur_num; // 現在の数字 int next_num; // 次の数字 int main() { prev_num = 1; cur_num = 1; std::cout << cur_num << "\n"; std::cout << cur_num << "\n"; while (true) { next_num = prev_num + cur_num; prev_num = cur_num; cur_num = next_num; // フィボナッチ数の偶数をスキップ if (cur_num % 2 == 0) { continue; } // 現在の数字が100より大きくなったらループ終了 if (cur_num > 100) { break; } std::cout << cur_num << "\n"; } return(0); }
実行結果。
1 1 3 5 13 21 55 89
今度は、フィボナッチ数列のうち奇数の数字のみが表示されました。
スポンサーリンク
>> 次の記事 : for文でのループ・繰り返し
<< 前の記事 : while文でのループ・繰り返し
スポンサーリンク