Ruby繰り返し処理(ループ処理)とは前回は条件分岐をやってみました。今回は処理を繰り返すループ処理というものをやってみます。ループ処理と言っても「1から100まで数字を出力する」とか「『こんにちは』を100回入力する」というような使い方はあまり行わず、実際には他の処理(例えば後述する配列)と組み合わせて使うことが多いので、条件分岐のように直感的にどのような場面で使うか想像しにくいと思います。)while文(条件付きループ処理)指定した条件を満たす場合に処理を繰り返すのがwhile文です。do処理end条件がtrue(真)の場合、do〜endの間の処理を実行します。無限ループに注意!条件が変わらないと延々と処理が行われますが、これを無限ループと言い、プログラムのバグ(欠陥)となります。次のような処理はバグとなります。doputs(“番号は10です”)end「==」は両辺が等しいことを示します。control+c)を押せば処理を強制終了します。ちなみにバグがあった場合は取り除く必要がありますが、この作業をデバッグと呼びます。1から100まで数字を並べてみる1から10までなら手でもできますが、100や1000といった数字だと大変です。これをRubyではこう書きます。doputs(suuzi)suuzi=suuzi+1end1から100まで表示されます。変数suuziに1を代入し、suuziが100以下という条件を満たすのでsuuziの中身1を表示し、1を加算し変数suuziは2となります。変数suuziが100になるまで処理が繰り返され、101になったときには条件を満たさないので処理を行いません。ちなみに、変数suuziに数字を1加算するにはsuuzi+=1と表記する方法もあります。suuzi<=100puts(suuzi)suuzi+=1endと表記できます(ノ)・ω・(ヾ)また、条件をtrueとし、do〜end内で条件分岐(if)を使って条件を満たした場合に処理を抜け出す(break)という方法もあります。suuzi==100suuzi+=1endこれも同様になります。suuzi==100」はこのコードと同じです。thenbreakendwhile文の入れ子構造(ネスト)を作るif文と同様にwhile文の中にwhile文を入れることもできます。1年〜6年までそれぞれ4組あるとします。doputs(“#{nen}年#{kumi}組”)kumi+=1endnen+=1end1年1組から6年4組まで並べて表示されます(・ω・)ノfor文(指定範囲ループ処理)whileは条件がtrueとなる場合にループ処理を行いましたが、for文は指定した範囲でループ処理を行います。́・ω・`)無限ループを防ぐために処理を抜け出す(break)コードを条件分岐と組み合わせて使ったりします。doputs(“無限ループ”)end延々と無限ループされます。count==10count+=1end簡単ですね。)timesメソッド(回数指定繰り返し処理)回数を指定して繰り返し処理を行います。doputs(“こんにちは”)end1から10まで数えるコードは、変数countを使うとこんなかんじになります。doputs(count)count+=1end何回目のループかを表示(0,1,2,3,...)させるにはこんな方法もあります。|変数|で定義した変数にはカウント回数が代入されます。|変数|puts(変数)endカウント回数が指定の数値回数分表示されます。するのは、プログラムは基本的に0から数えるので、+1で修正する必要があるからです。他にもeachメソッドがありますが、これは次の配列を理解してからのほうがわかりやすいので後述します。コメントをキャンセルメールアドレスが公開されることはありません。