プログラムの基本(演算子)

プログラム

基本処理【順次処理】【反復処理】【条件分岐】に加え、【変数とデータの型】について説明しました。

そして次は【演算子】について説明しようと思います。この演算子とはプログラミングにおいて計算の内容を示す記号で+や=といった算数・数学でおなじみの記号のことなのですがプログラミングの世界ではちょっと、それの意味するところが違うのです。そして、この演算子の特殊性が子供ではなく逆に大人がプログラムを学ぶ際に躓いてしまう部分のようです。例えば反復処理(ループ)でよくあるx = x  + 1のような表現、これは処理が1回終わったら変数Xに1追加するという命令

Y = X + 1 ならわかるけど X = X + 1 って何?

これを普通に数学の知識で計算したら( X – X ) = 1 で 0 = 1になって数学的に成り立たないじゃん! そうですよね、義務教育を終えた人ならばそうおもっちゃいますよね。

実はプログラムの世界では=(イコール)は、左辺と右辺が等しいという意味ではなくて代入という意味であるんですね。プログラムにおいて左辺と右辺が等しくなる状態というのは Ⅹ == 1 と表現します。そのため Ⅹ = Ⅹ + 1 は 感覚的には X’ ← X + 1 なんですね。

ということで演算子をまとめられている方のサイトをみつけました

演算子一覧

 

演算子も分類によっていくつかあるのですが、それぞれについて簡単にコメントすると次のとおりです。

 

1)算術演算子
これは四則演算ですね。足し算、引き算の+とーはわかりますが、コンピュータプログラムの場合、掛け算は×ではなく*、割り算は÷ではなく、/をつかいます。
2)代入演算子
これは変数の中に値を入れるという意味で文字通り代入という意味で使います。A=1は変数Aの中に1を入れる、A+=2は、Aの初期値、例えば5に対して+2しろという意味です
3)等価比較演算子
これは左と右の値が比較してどうかというのを調べて、結果を真か偽かの2値で返すものです。A == 3  がAの値が3であれば、真、3ではないものであれば偽を返すものです。
4)短終論理演算子
これは複数の条件が成立すれば真を返し、成立しなければ偽を返すものです。
5)論理演算子
ベン図でおなじみのあれです。

 

こんなにあるの?覚えきれないよって思われるかもしれませんがこれらを暗記しなければいけないということはなく必要になったら演算子一覧を見て使えばよいと思います。

 

さて、このようなややこしい演算子ですが教育用プログラミングではこのあたりを気にしないようにできています。

これは例えば1から100までを足すプログラムだとして
phytonでこれを書くと以下のように演算子が使われます。

 

sum = 0
i = 1
while i > 100:
   sum = sum + i
   i = i + 1
print(sum)

 

一方、Scratchの場合はこうなりますが、ある程度、演算子の知識は必要ですね。

 

 

でも、本格的なプログラミング言語を使うとなるとこのあたりは、しっかりマスターしなければいけないところなので、こういうのがあるのねと軽く知っておきましょう。

今回はそんなお話でした。

コメント

タイトルとURLをコピーしました