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