広告
  サイト内検索:
<Let's create a game!> Introduction of programming for absolute beginners English
 

SESSION 7 その12
演算子(えんざんし)

さあ、今日は最後に
演算子(えんざんし)
を見よう。

実は演算子はもう
いろいろ使ってるんだぜ。

えっ、そうなの?

 
そんなの
あったっけ??


演算子(えんざんし)とは
プログラムで様々な評価・処理をするのに使う
記号のことだ。


同じ記号でも、使う場所によって処理が違う
ものもあるので注意しよう。


まず、一覧表をざっと見てくれ。
 
うわー
いろいろ
あるんだね。

演算子一覧
 
  演算子 種類 書式 内容
  代入 A = B AにBを代入する。例:int a = 10;
  + 算術 A + B 数値Aと数値Bを足す。例:10 + 5
  - 算術 A - B 数値Aから数値Bを引く。例:10 - 5
  * 算術 A * B 数値Aと数値Bを掛ける。例:10 * 5
  / 算術 A / B 数値Aを数値Bで割る。例:10 / 5
  % 算術 A % B 数値Aを数値Bで割った余りを出す。例:10 % 5
  > 比較 A > B AがBより大ならtrueを返す。例:a > b
  >= 比較 A >= B AがB以上ならtrueを返す。例:a >= b
  < 比較 A < B AがB未満ならtrueを返す。例:a < b
  <= 比較 A <= B AがB以下ならtrueを返す。例:a <= b
  == 比較 A == B AとBが同じならtrueを返す。例:a == b
  != 比較 A != B AとBが異なるならtrueを返す。例:a != b
  | 論理 A | B AかBがtrueならtrueを返す。必ず両方チェックする。
例:a | b
  || 論理 A || B AかBがtrueならtrueを返す。例:a || b
  & 論理 A & B AとBがtrueならtrueを返す。必ず両方チェックする。
例:a & b
  && 論理 A && B AとBがtrueならtrueを返す。例:a && b
  ! 論理 !A Aがfalseならtrueを返す。例:!(a < b)
  ^ 論理 A ^ B AとBが同じ(両方がtrueかfalse)でなければtrueを返す。例:a ^ b
  ++ インクリメント ++A
A++
数値型Aに1を加算する。++Aの場合、代入前に加算。A++の場合、代入後に加算。
例1:a = ++b; 例2:for(int i = 0;i < 10;i++)
  -- デクリメント --A
A--
数値型Aに1を減算する。--Aの場合、代入前に減算。A--の場合、代入後に減算。
例1:a = --b;
  & ビット A & B 整数型Aと整数型Bをビット単位にAND演算する。
  | ビット A | B 整数型Aと整数型Bをビット単位にOR演算する。
  ^ ビット A ^ B 整数型Aと整数型Bをビット単位にXOR演算する。
  ~ ビット A ~ B 整数型Aと整数型Bをビット単位にNOT演算する。
  >> シフト A >> B 整数型AのビットをB数分右にシフトする。余分の左側は先頭1ビットで埋め。
  << シフト A << B 整数型AのビットをB数分左にシフトする。余分の右側は0埋め。
  >>> シフト A >> B 整数型AのビットをB数分右にシフトする。シフトの左側は0埋め。
  instanceof その他 A instanceof B 参照型Aと参照型Bの型が同一ならtrueを返す。
例:a instanceof String
  + その他 A + B AとBの文字列を連結する。例:"料金は" + a + "です。"
  . その他 A.B オブジェクトAのメンバーBへアクセスする。
例:objA.setX(10);

先頭がグレーの項目は、既に一回は学習したもの



 
あ、ほんとだ。
なんか見たことある記号が
いろいろある。

「=」とか「+」とか・・・
 
 
な、演算子はもういろいろ
使ってるんだ。

算術演算子とか
代入演算子はもう見たよな。

だから何となく分かるだろ。
 
 


今は表をざっと読んどいてくれ。

比較、論理などの演算子は、
次のセッションで見る予定だよ。

さあ、今日覚えることはおしまい。
最後に練習問題をしよう。

はいっ。

よく頑張ったな。
 


 
練習問題

さあ、最後のテストだ。

今日やったことを使って
問題を解いてくれ。
プロジェクトKotoTest2の
KNMain.javaのメイン関数内に
答えを書いてくれ。
前のはコメントアウトでもしといて。

よーし、がんばるぞ!

がんばったな。

今日は覚えることも
多かったしな。
  まだまだ
平気だよー。


  練習問題2:問い


練習問題2
 
問1:次の質問の結果を標準出力に表示しなさい。

パーティーを行います。パーティーには5人来る予定です。
焼肉をするために一人当たり以下の食材を買います。
カルビ100グラム(500円)、ロース100グラム(400円)、
しまちょう50グラム(200円)、その他野菜など100グラム(200円)

質問:
1、一人当たりの食材のグラム数を出しなさい
2、一人当たりの食材の値段を出しなさい。
3、パーティーにかかる合計金額を出しなさい。
 

ほっ。。。

今回はあたしのことじゃなかったね。
ふふーん♪

そーなの?
よかったー。


へへへ

さあ、さあ、
テストがんばれー。
 
え~

なんかあったけ!?

カタ カタ  
もー今はいーや。

問題に集中しよ!
 


あれー!!
実行ボタン押しても
うまく実行できないっ???


なんでー???

おーい、
主プロジェクトの設定
ちゃんとできてるかー。

あ、そうか。

今度はKotoTest2
に戻ったんだっけ。
  気をつけろー。

KotoTest3が
動いてたんだよ。


ふうー

コードが多くなってくると
コメント化するのも大変だ。

まとめてコメント化する
いい方法ないかな、
なぽちゃん?
おお、よく気づいたな。
あるよ。
IDEのコメント機能を使えば、一発で
まとめてコメント化・コメント解除できるよ。


やり方は簡単。
まず、コメント化したいコードの部分を
ドラッグして選択状態にする。

で、コメントボタンコメントボタン(Clrl + /)
を押すだけ。

コメント解除も、コメントを選択して
コメント解除ボタンコメント解除ボタン(Clrl + /)
を押すだけだ。

ショートカットキー Clrl + / でも
できるよ。
ふうー
こーいうのは
自分で気づくのが
重要だな。

えっへん
 
IDEのコメント化ボタン
コメントボタン


でも、
まとめて
コメント化は
/* */でも
できるだろ。
あっ!

そうだった。。。


うーん、うーん・・・
難しいなあ。

変数名、何にしようかな。
食材の重さだから・・・
うーん、
分かりづらいなあ・・・

・・・待てよ・・・
これだと合計が出ないかな・・・
カタ カタ  
うーん。

最初から
自分で作るのは
難しいなあ。
さあ、最後だ。

今までやった
ことを思い出して。
よく考えてねー。

何回も実行して
テストしていいからな。

読みやすいコードを
心がけてくれな。

  練習問題2:解答


練習問題2 解答 (KotoTest2のKNMain.java)17行目~
 
・・・          
017            public static void main(String[] args) {      
018                  // TODO code application logic here      
019          
020                  //System.out.println((2048 * (1024 + 1024)) - 8658 +      
021                  //                             896 * 1024);      
022          
023                  //変数 a と b と c を宣言。同時に初期化      
024                  //int a = 0;      
025                  //int b = 0;      
026                  //int c = 0;      
027          
028                  //昼の合計を計算して変数 a に代入      
029                  //a = 100 * 5;      
030                  //昼の合計を表示      
031                  //System.out.println("昼の合計は" + a + "円です。");      
032          
033                  //夜の合計を計算して変数 b に代入      
034                  //b = 200 * 3;      
035                  //夜の合計を表示      
036                  //System.out.println("夜の合計は" + b + "円です。");      
037                          
038                  //昼(変数 a)と夜(変数 b)の合計を計算して変数 c に代入      
039                  //c = a + b;      
040                  //昼と夜の合計を表示      
041                  //System.out.println("昼と夜の合計は" + c + "円です。");      
042                       
043                  //******************************************      
044                  //練習問題2 解答      
045                  //******************************************      
046                  //変数を宣言する      
047                  int shokuzaiGram;//一人当たりの食材の重さ      
048                  int shokuzaiNedan;//一人当たりの食材の値段      
049                  int partyGoukei;//パーティーの合計金額      
050          
051                  //計算をする      
052                  shokuzaiGram = 100 + 100 + 50 + 100;      
053                  shokuzaiNedan = 500 + 400 + 200 + 200;      
054                  partyGoukei = shokuzaiNedan * 5;      
055          
056                  //標準出力に表示をする      
057                  System.out.println("一人当たりの食材の重さは " +      
058                                                shokuzaiGram + "グラムです。");      
059                  System.out.println("一人当たりの食材の値段は " +      
060                                                shokuzaiNedan + "円です。");      
061                  System.out.println("パーティーの合計金額は " +      
062                                                partyGoukei + "円です。");      
063          
064           }      
・・・          
黄色の部分が追加・改変部分です。
書き写して実行して下さい。
前の、
全部コメント化
したのか。
 
えへへ

とーぜんでしょ。
も一回
見たいもん。

おっ、できたか。

どれどれ、うーんと・・・

 
ふう。
どうかな?

えっと、
計算はあってると思うけど・・・。

変数名は、partyGoukeiとかに
してみたよ。

//************
のコメント、かわいいよね。
「変数の有効範囲」の時に
使ってたの真似したの。
 


練習問題2 解答 
実行結果(出力ウィンドウ)
 
どう?

変数名は
「日本語のローマ字書き」
とかにしたんだけど。
だめ?
いや、別にかまわんよ。

今回は、先に全部計算してから、
まとめて表示したんだな。
その方が処理が分かりやすくて
いいな。

コメントの整理もできてるし
自分なりにいろいろ考えてる。
読みやすいし、よくできてんじゃね。

うーん、でもなあ・・・
えっ!
なんかあった?
  ふーむむむ。


 
確かに変数名のつけ方とか
何も決めてないのはまずいな。


これからは、お前にもいろいろ
コードを書いてもらうことに
なるし。

ちょうどいい機会だから、
コーディング規約や
命名規則を決めておこう。
 
 
コーディング規約?
 
 

 
 

広告
home もくじ 前のページを読む 次のページを読む
  サイト内検索:
広告
お勧めの姉妹サイト
leafdays - リーフデイズ 超初心者のための園芸入門 - 楽しい趣味のガーデニング -
広告