Rubyにおけるwhile文の条件式(true, false)について現役エンジニアが解説【初心者向け】

初心者向けにRubyにおけるwhile文の条件式(true, false)について現役エンジニアが解説しています。while文とは、繰り返しの処理を行うことができる構文の1つです。条件式とは、繰り返し処理などを続ける条件に使います。Rubyにおけるwhile文や条件式の書き方や使い方について解説します。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

Rubyにおけるwhile文の条件式(true, false)について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそもRubyについてよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプRuby講座の内容をもとに紹介しています。

 

田島悠介

今回は、Rubyに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Rubyにおけるwhile文の条件式(true, false)について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

while文とは

while文は、繰り返しの処理を実行できる構文のひとつで、書き方は以下の通りです。

while 繰り返し続ける条件 do 
繰り返したい処理 
end
※doは省略することも可能

他に繰り返しの処理ができる制御文では「time」「each」「for」などがあります。
 

[PR] Rubyのプログラミングで挫折しない学習方法を動画で公開中

条件式とは

条件式とは、プログラミング言語などで用いられる式の種類のひとつで、値や式の比較や論理演算を組み合わせたもののことです。計算結果は真(true)または偽(false)となり、プログラムの分岐条件の記述などに用いられます。

while文の場合、以下の「繰り返し続ける条件」の部分に書かれる条件式が「true」の場合に、処理が実行されるということになります。

while 繰り返し続ける条件 do
繰り返したい処理
end

 

while文と条件式を利用して繰り返し処理を実行してみよう

while文を使用した基本的な繰り返し処理の書き方

i = 0  
while i <= 5 do
  puts i
  i+= 1
end

#=>
0
1
2
3
4
5

while文を使用した少し実践的な繰り返し処理の書き方

require 'date'  #Dateクラスを使うためにこの一文を記述

day = Date.today  #今日の情報を取得
start_date = Date::new(day.year,day.month)   #今月の月初の情報を作成
next_start_date = start_date >> 1  #来月の月初の情報を作成
end_date = next_start_date - 1  #今月の月末の情報を作成

#今月の月初から月末までの情報を出力する
while start_date <= end_date do
  puts start_date
  start_date+= 1
end

#=>
2020-10-01
2020-10-02
2020-10-03
.
. 中略
.
2020-10-29
2020-10-30
2020-10-31

※記事執筆が2020年10月のため出力結果は2020-10...となっております

 

まとめ

Rubyで繰り返し処理を作る際はeach文を使用することが多いのですが、while文やfor文の書き方もしっかり学習しておくとよいですね!

また、while文を使用する際は、無限ループになってしまわないように条件式の内容にも注意して使用しましょう!
 

筆者プロフィール

澤亀浩弥(さわかめひろや)

Webエンジニア。
開発実績等は勤怠情報管理システムの開発、地方銀行のプログラムの保守・運用、企業とインフルエンサーをマッチングさせるプラットフォームの開発。

25歳までプロ野球の世界を目指し独立リーグでプレー。その後、某大手会社の製造業作業員として働いていたが毎日の単調な仕事よりもっとクリエイティブな仕事がしたいと思い友人エンジニアにプログラミング学習方法など教えてもらい独学で半年程学習した後、IT業界に転職し、現場経験を積んでフリーランスエンジニアとして独立。

現在はその経験をこれからプログラミングを学んでいく方に伝えていくためにより広い知識を勉強中です。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもRuby on Railsを使ったプログラミングを習得できるオンラインブートキャンプRuby講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。