プログラミング入門

プログラミング入門
電卓を作ろう・パートI!!
電卓・・・どんなものか?
例えば、1+3を計算したい
+
まず、1のボタンを押す
次に、+のボタンを押す
%
次に、3のボタンを押す
√
MR
M-
M+
÷
次に、=のボタンを押す
-
/+
7
8
9
×
結果が表示される!!
C
4
5
6
-
AC
1
2
3
・
=
0
+
プログラミングとは
プログラムを作る≠パソコンに向かって作業する
 その前にやることがいっぱい
1.テーマを決める
2.あらすじを作る
3.シナリオを書く
4.プログラミング言語に
翻訳する⇒C言語
5.動かしてみる
6.確認する
7.バージョンアップする
電卓
 電卓のシナリオ・・・とは
言っても
 本格的な電卓のシナリオを
書くのは困難
 簡単なところから初めて
 ・・・ただし、本質をつかむの
%
√
MR
M-
M+
÷
-
/
+
7
8
9
×
C
4
5
6
-
AC
1
2
3
・
=
0
+
は困難
 徐々に『バージョンアップ』
 プログラミングのテクニック
 すぐに身につくものではない
ので、訓練が必要
とりあえず、足し
算ができれば!?
『1+3=4』
C言語で電卓
 シナリオ・・・というほどのものではないが
 “1+3”を実行したい
 答え“4”を表示したい
 つまり
「1+3=4」
 とディスプレイに表示できれば・・・
 表示⇒標準出力「printf(“・・・・”);」
 ・・・先週やった!?
C言語で電卓
 C言語で実行するには
 プログラムを書く
 ビルドする
 実行する
C言語で電卓
 前回勉強した標準(入)出力「printf」文を使う
 とりあえず、書いてある通りに作って実行!!
 上記のプログラムを作成して、実行してみよう!!
C言語で電卓
「プログラムの解説」
『“・・・”』の外
標準
出力
ここに、整数(あとに示す
数字)を表示する!!
どこか?
コンマ「,」の後に示
す整数(この場合
1+3の計算結果)を
「%d」の位置に表示
C言語で電卓
 次に、3+5を計算したい
 同じように、プログラムを書いて
 ビルドして
 実行する
 ・・・とても、電卓とは思えない
でも、やってみてください・・・
C言語で電卓
やっぱり、電卓とは違う・・・
より、電卓に近づけるために
『バージョンアップ』
電卓
もう一度、電卓を考えてみる
例えば、1+3を計算したい
+
まず、1のボタンを押す
次に、+のボタンを押す
%
次に、3のボタンを押す
√
MR
M-
M+
÷
次に、=のボタンを押す
-
/+
7
8
9
×
結果が表示される!!
C
4
5
6
-
AC
1
2
3
・
=
0
+
電卓
入力した数字はどこに行くのか?
1
+
3
1
+
3
+
%
√
MR
-
/+
M-
M+
÷
7
8
9
×
C
4
5
6
-
AC
1
2
3
・
=
0
+
1の入れ物
4
4
4の入れ物
+の入れ物
3の入れ物
メモリという入れ物へ
⇒メモリに入っている
数字を表示
⇒入れ物は初めから
準備しておく!!
C言語で電卓・・・メモリという入れ物
“変数”
とりあえず、左の
プログラムを実行
してみよう!!
↓
さっきと同じ結果
が出力されるはず
C言語で電卓・・・メモリという入れ物
“変数”
「a」という名前をつけた、整
数を入れる、入れ物を準備
a
「b」という名前をつけた、整
数を入れる、入れ物を準備
b
「kekka」という名前をつけた、
整数を入れる、入れ物を準備
まずは整数(数字)
の入れ物の作り方
kekka
C言語で電卓・・・メモリという入れ物
“変数”
1
3
a
b
1 + 3
4
kekka
入れ物に値
(数字)を代入
中の数字
を足して
「=」
『=』の意味:
左の『入れ物』に
右の『数字』を
入れる(代入する)
C言語で電卓・・・メモリという入れ物
“変数”
結果の表示
1
3
a
b
4
kekka
後の数字を出てくる順番に表示
⇒ただし、「,」の後が入れ物の場合、入れ物の中の値
C言語で電卓
~より一般化したい~
 これでも、電卓とかけ離れている・・・。
 何が違うか?
 数字を自分で入力できる。
 では、自分で数字を入力できるようにプロ
グラムをバージョンアップしてみよう!!
電卓
キーボードから入れ物へ値を入力
1
+
3
1
+
3
+
%
√
MR
-
/+
M-
M+
÷
7
8
9
×
C
4
5
6
-
AC
1
2
3
・
=
0
+
1の入れ物
4
4
4の入れ物
+の入れ物
3の入れ物
メモリという入れ物へ
値を入力するにはどう
すればよいか?
※ここでは、数字だけ
を考える
C言語で電卓
“標準入出力”
 ディスプレイに数字や文字を表示するとき
 「printf(“・・・・・”);」を使った
⇒これを標準出力
 では、キーボードから“ある入れ物に”数字を入力する
場合
 「scanf(“%d”, &a);」を使う
⇒これを標準入力
 この意味・・・”%d”、つまり、整数を入れ物「a」に入れる。
※入れ物「a」の前についている「&」は、「scanf」を使う
場合の約束事
C言語で電卓
“標準入出力”
 とりあえず、左のプ
ログラムを実行して、
確認してみよう!!
数字を入力した
ら「Enter」を押す
C言語で電卓
“標準入出力”
1
3
1
3
a
b
実際には
入力できる数字は
任意(好きな数)
演習2
 次の実行結果にあるように、入力した2つの数字の引き算の実
行結果も同時に表示するプログラムを作成しなさい。
 ヒント
① 引き算は「-」を使う。
② “1+3=4”を表示した後に、入れ物「kekka」に aーbの計算結
果を代入する。
③ “1-3=-2”を表示する。