テクノロジー 2016.08.28 2018.03.09
【Ruby初心者でも分かる!使える!】”演算子”を徹底解説

出典:  goodluckjapan.com

あなたはプログラミングで演算子を使用していますか?

プログラミングは独学でも出来るというものの、

勉強をする以前に色々なアプリを揃え、必要なものをインストールし、さらに細かな設定をして…と、面倒な上に難しいですね。

しかし”演算子”は、なんと MacBook(パソコン)さえあればすぐに動かすことができます。
もちろんインストールや新たな設定の必要はまったくありません。

計算をしたり条件分岐をしたりするときには欠かせないこの演算子は使えるだけでコードを柔軟にし、そして結果に幅をもたせることができます!

この記事では、

*演算子の概略覚えておきたい5パターンの演算子紹介

そして実際に動かしてもらうために簡単な

*練習問題

を紹介していきます。

 

”演算子”とは?

57cda04947361a907d7b6879a71498a3_s

出典:写真AC

演算子とは、「計算の内容を表す記号」であり 式と式を組み合わせるために使います。式とはは結果として値を得られるものを指します。

簡単なものでは数値文字列がそれにあたります。
例えば、5という数値はRubyによって「これは5という値だ」と評価されます。

こちらの式ですが、他の式と組み合わせることにより複雑な式にすることができます。

ex.)  5+7

このとき、式と式を組み合わせているもの(+)が演算子と呼ばれるものです。

式と式は演算子によって組み合わされ、全体(つまり5+7)がひとつの式となります。そして最終的にはこの式は12という値として評価されます。
上の説明のとおり、演算子は式と式を組み合わせるために使っていき、利用することで何らかの結果を出すことができます。

組み合わされた式がどのような値として評価されるのかはその演算子の種類によって決まります。

演算子を使う準備

f2698a67594ee1f918584f468b122436_s

出典:写真AC

 

この章では実際に手を動かしながら学習するための準備としてはじめにターミナル、irbの立ち上げ方法を説明します。

すでに理解されている方や、演算子の話に進みたい方は飛ばして構いません。

irbとは?

プログラミングの基本は「プログラムを書いてファイルとして保存し、そのファイルを実行する」ことです。

通常ではSublimeText(サブライムテキスト)などのソフトでプログラムを書き ファイルとして保存、

その後そのファイルをターミナルGitBashといったコマンドライン(キーボードから文字を打ち込んでコンピュータを操作するツールの総称)で読み込むことでプログラムを実行していきます。sublime出典: TECH::MASTER

しかし、今回は演算子の動きを確認するだけの簡単なプログラムしか書かないので、
逐一ファイルに記述して実行 という手順は踏まないこととします。

その代わりに利用していくのが、irbという簡易プログラム実行機能です。

irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。

引用: Ruby 2.3.0 リファレンスマニュアル

irbとは、ターミナル(WindowsではGitBash)から直接、Rubyのプログラムを動かすことができる機能です。

つまり、わざわざプログラムを記述するファイルをつくり、そのファイルをターミナルで実行するといった2段階の作業をするが必要がなく、

直接ターミナルにプログラムを書くだけで結果をその場で表示させることができるのです。

irbを起動しよう

irbを使うためにまずはターミナルを起動します。

controlキー + spaceキーを押すと、スポットライト検索のバーを出すことができます。

その後、「ターミナル」と入力し、検索結果として出たターミナルのアプリケーションをダブルクリックすると起動できます。spotlight

下のようなターミナルの画面が立ち上がったでしょうか。

表示について簡単に説明していきます。

terminal出典: TECH::MASTER

コンピュータ名とは自分のコンピュータの名前です。

カレントディレクトリとはターミナルで現在作業中となるディレクトリのことを指します。新規にターミナルを立ち上げるときはと表されます。

ユーザー名は自分の名前です。そしてそのあとに続く「$」はプロンプトといい、コンピュータが命令を受け付けられる状態であることを示します。つまり今は、命令待ちの状態です。

それでは「$」のあとにコマンドを入力していきます。

「$」に続いて「irb」と入力しましょう。するとirbが起動できます。

$irb
irb(main):001:0>

2行目のような表示が出たら成功です。

irbを起動したら、「>」マークの直後から直接プログラムを入力してエンターキーを押すだけで次の行にプログラムの実行結果を表示してくれます。

irbを終了するには、irbを起動中に「exit」と入力しエンターキーを押しましょう。

irbを使用するときは以下の注意事項に留意してください。

・irbで日本語を入力すると、文字化けする場合があります。
・本章の作業は全て半角英数字で行うよう、注意してください。
・irbを起動中に再び「irb」と打ち実行しないでください。
・exitと打っても終了できない場合は、endと打って実行してみてください。

Ruby演算子

18fefd66e684003e597da1252104af12_s出典:写真AC
ここからさっそく演算子を見ていきます。
演算子はプログラミングをしていく上で頻出の文法です。上手に使うことで実行結果に変化をもたせたり、複雑な条件分岐が出来るようになります。

最初に覚えておいて損はないです、
適宜irbを使いそれぞれの演算子の動きを確認してみましょう!

代数演算子

代数演算子は数値を計算する場面で使用します。

演算子           使用例                        

  • +(足し算)               4+9    #=>13    (結果として13という値が返されます)
  • (引き算)                7-3     #=>4
  • * (かけ算)              12*2    #=>24
  • /(割り算)                18/3    #=>6
  • %(剰余)                 20%7   #=>6

                                          

使い方は、普通の算数の計算と同じです。剰余の計算のみ馴染みがないので注意が必要です。
これは例えば、「20を7で割った余り」を求めることができます。

以下はirbに入力したときの画面です。
https://gyazo.com/84ff1a5c4e0d0847d4dfc2f797ec9d20
式を入力してエンターキーを押すと、結果としてその値を返してくれます。
またirbはexitで終了するまで何度でも計算ができます。

【入力してみよう】
演算子を使って結果を確認してみましょう

練習問題
1. 8+5
2. 30-9
3. 2*8
4. 100/5
5. 18%7                      答え 1.13 2.21 3.16 4.20 5.4

比較演算子(関係演算子)

続いては、比較演算子です。

この演算子は、値同士を比較するときに使用します。

演算子           使用例                         

  • ==                                3==3    #=>true
  • >                                 5 > 5    #=>false
  • <                                   5 < 8    #=>true
  • >=                                2>=6    #=>false
  • <=                                4<=4    #=>true
  • !=                                  7!=9     #=>true  

                                                                                                                       

比較演算子を使った場合の返り値は、式が正しければtrue、間違っていればfalseという結果になります。
まずは上の3つ(>,<,==)から詳しくみていきましょう。
演算子 >, < , ==


「>」,「<」,「==」はそれぞれ次のような意味になります。

a>b( aはbより大きい)

a<b( aはbより小さい

a==b(aとbは等しい)

a,bにどんな値を入れるかによって結果が変わります。

[例]

#1は20より小さいか?
irb(main):001:0>1 < 20
=>true
#1は20より大きいか?
irb(main):002:0>1 > 20
=>false
#2 × 5は10と等しいか?
irb(main):003:0>2 * 5 == 10
=>true
#10は20と等しいか?
irb(main):004:0>10 == 20
=>false

※値同士が等しいかを確かめる場合は、「= が2つであること」に留意してください。

演算子 >=, =<


続いては 「>=」,「=<」です。
比較演算子>,<のあとに=を続けることで〜以上〜以下を表すことができます。
違いを確認しましょう。

[例]

#2 × 3は6以上か?
 irb(main):001:0>2 * 3 >= 6
 =>true
#2 × 3は6より大きいか?
 irb(main):002:0>2 * 3 > 6
 =>false
 #4 × 5は20以下か?
 irb(main):003:0>4 * 5 <= 20
 =>true
 #4 × 5は6より小さいか?
 irb(main):004:0>4 * 5 < 6
 =>false

not演算子(!)


!(エクスクラメーションマーク)はnot演算子と呼ばれ、否定の意味で使われます。
!と=を合わせた!=は==と反対で、値同士が等しくない場合にtrueを返します。

[例]

#2 × 3 は6ではないか?
  irb(main):001:0>2 * 3 != 6
  =>false
#2 × 3 は10ではないか?
  irb(main):002:0>2 * 3 != 10
  =>true

【入力してみよう】
演算子を使って結果を確認してみましょう

練習問題
1. 10>10
2. 10>=10
3. 9/3==6
4. 3*8!=11                        答え 1.false 2.true 3.false 4.true

代入演算子

先ほど、等しいことを表す演算子「==」を紹介しました。

普段イコールとして「=」を用いている私達には少し違和感ですね。
では、rubyで「=」はどんな意味を持つのでしょうか?

実は、変数のあとの=は数学の方程式のように等しいという意味ではなく、代入するという意味になります。

【point】プログラミングにおける=の意味

ここで必ず覚えてしまいたい重要なポイントがあります。それは、

「Rubyにおいて=が1つの式は必ず『右側の値を左の変数に代入する』という意味になる」

ということです。これは、どのような場合でも絶対です。

fruit出典: TECH::MASTER

※文字を”(ダブルクォテーション)、または'(シングルクォテーション)で囲むことで文字列という文字を表現するデータが定義できます。

※「変数」について知りたい場合は 変数と定数 を参照してください

論理演算子

「5より大きい且つ10より小さい」

「a と bが等しいまたはc は dよりも大きい」

など条件式を組み合わせた複雑な条件式を書くときには、今から紹介する論理演算子が使われます。

演算子                               使用例                       

  • &&                               3<2 && 2<3    #=>false
  • ||                                  4<2 || 4<6      #=>true

                                        

論理演算子(&&,||) はその両側に条件式を置きます。

「&&」(且つ) は左辺と右辺の式がともに正しい場合に式全体の結果がtrueとなり、
それ以外はfalseとなります。

「||」(または)は左辺と右辺の少なくとも1つが正しい場合にtrue
どちらも間違っているときはfalseとなります。

[例]

# 3は5より小さく 且つ 3×3は5より小さいか?
  irb(main):001:0>3<5 && 3*3<5
  =>false
# 1と3は等しい または 3と3は等しいか?
  irb(main):002:0>1==3 ||3==3 
  =>true

【入力してみよう】
演算子をつかって結果を確認してみましょう

練習問題
1. 6%2==3 && 24%8==3
2. 7-1!=6 || 5+8==52/4                                     答え 1.false 2.true

三項演算子

最後におまけとして三項演算子を紹介します。

三項演算子は、条件式が正しいか否かでそれぞれ決めておいた値を結果として返す演算子です。

【真偽値式】 ? 【真の場合に評価する式(式A)】 : 【偽の場合に評価する式(式B)】

という記述で条件式を書くことが出来ます。
真偽値式の値がtrueだった場合は式Aを結果として返し、falseだった場合には式Bを返します。

[例]

# 10を2で割った余りは0であるか?(真なら偶数,偽なら奇数)
  irb(main):001:0>10%2==0? "偶数":"奇数"
  =>"偶数"

紹介は以上になります、お疲れ様でした!

おわりに

e70cf2af3d58fdec4ea6749a0ded507a_s出典:写真AC
ruby演算子はいかがだったでしょうか。

ターミナルの機能irbを使って大きく5種類の演算子を扱いました。どれも覚えてしまえば簡単に使用できるようになります。

今回は予備知識があまり必要にならないものを紹介したため、実は5つ以外にも
例えばハッシュ演算子配列演算子といった演算子が存在します。
これらはrubyの勉強を進めて概念を理解したあとに調べてみましょう。

演算子の勉強は想像するプログラミングのイメージと少し違っているかもしれませんが、プログラムを書く際によく使う大事な文法です。

演算子の使い方をマスターして、rubyプログラミング習得への一歩を踏み出しましょう!

TECH::CAMPについて

TECH::CAMPは、講義形式で知識だけを学ぶのではなく、実際にサービスを作りながら実践的に学んでいきます。

TECH::CAMPならプログラミングが、なんとなく分かるではなく、一人で出来るようになります。

また、質問し放題のため、分からないところを質問しすぐに解決することで、どんどん新たなスキルを身につけることができます。

この機会にプログラミングを学びませんか?

絶対に挫折しないテクノロジー体験会で
最新のプログラミングを学ぼう

プログラミング体験会

TECH::CAMP』のプログラミング体験会なら、Webや人工知能、VRといった最新テクノロジーを無料で学べます。教室で講師に質問し放題なので、全くの未経験からでも絶対に挫折せずにやり切れます。

  • 実際にプログラミングを触れる
  • 質問し放題なので、疑問点が即解消される
  • テクノロジーをなぜ学ぶべきなのか明確になる
  • 人工知能やVRなど他では学べないテクノロジーが学べる

まずは一度プログラミングに触れてみたい方は気軽にご参加ください。なお月に1000名以上が参加するため、予約はお早めをオススメしております。

プログラミング体験会を詳しく見る

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

  • カテゴリー