プログラミング言語 c - fc2cprog.web.fc2.com/2011lec05.pdf · 2011. 5. 18. ·...
TRANSCRIPT
プログラミング言語 C
第5講
フローチャート
構造化プログラミング
●明確なアルゴリズムの流れを作る
●アルゴリズムは、3つの基本構造で表すことができる
●プログラムの基本構造
■順次
■選択
■繰り返し
制御
● フローチャート
■アルゴリズムの流れを示す図記法
● PAD(Program Analysis Diagram)
■構造化プログラミングの為の新しい図記法
流れ図
A B
?
A
B
Yes
Yes
No
No
?
フローチャートの部品(1) ●端子(始めと終わり)
●処理 ● 繰り返し
●判断(条件分岐)
START
END
a ← a+3
a > 3 No
Yes
a<10の間
(繰り返し終端)
フローチャートの部品(2) ●入出力
●準備(宣言など)
●定義済み処理(関数)
●結合子
a を表示 a を印刷
関数名
1 A P.3 A
異なるページ 同一ページ内
データの入出力
文字列a[10]
P.2 A
基本構造のフローチャート(1)
●順次
●選択
処理A
処理B
条件 No
Yes
条件
1 2 Else
処理B
処理A
処理A 処理B 処理C
IF THEN ELSE 型 CASE 型
基本構造のフローチャート(2)
●繰り返し (前に条件)
前の条件が真の間、繰り返す
処理
条件 No
Yes
条件
処理
基本構造のフローチャート(3)
●繰り返し (後に条件)
後の条件が真の間、繰り返す
処理
条件
No
Yes
条件
処理
フローチャートの例
Yes No
●構造化された流れ
前処理
1
1
条件
処理B
表示
START
END
後処理
処理A
条件
データの入力
フローチャートの練習問題 ● 以下の手順にしたがったカレーの作り方のフロー
チャートを解答例を参考にして、PowerPointで作りましょう
● ファイル名:05curry.pptx
1. 肉、野菜などの材料を切る 2. 材料を鍋に入れる 3. 材料を炒める 4. 十分炒めたか?(まだなら3へ、十分なら5へ) 5. 鍋に水を入れる 6. カレーは辛口か?(辛口なら7へ、それ以外は8へ) 7. 辛口のカレー粉を入れる(9へ) 8. 甘口のカレー粉を入れる(9へ) 9. 具は柔らかいか?(柔らかければ11へ、そうでなければ10へ) 10. 煮る(9に戻る) 11. できあがり
解答例
課題 ● 手続きを踏む身近にあるもの(料理、買い物、登校する道のり、休日の過ごし方など)をフローチャートで表しましょう。
● ファイル名:05flow.pptx
● PowerPointで作成し、学籍番号、氏名、テーマをタイトルスライドに明記し、配付資料でA4サイズ1枚になるようにプリントアウトして提出する。
● 順次、選択、繰り返しの基本の形が入っていること。
● 選択,繰り返しを利用した数に応じて加点します。
ヒント(選択の例) ● 雨の予報 ● 休日
傘を持つ
予報は雨か No
Yes
傘は持たない
天気予報を見る
約束場所に向かう
友人と 約束があるか
No
Yes
家でごろごろ
ヒント(繰り返しの例) ● 電車に乗る ● 買い物(服)
電車が来るまで
駅で待つ
電車に乗る
お気に入りの服が見つかるまで
服を探す
試着する
ヒント(自動販売機) ●自動販売機でジュースを買う
START
自動販売機にお金を入れる
お金が足りるまで
追加してお金を
入れる
1
1
好みのジュースのボタンを押す
出てきたジュースを取り出す
釣り銭ボタンを押す
おつりはあるか No
Yes
釣り銭を受け取る
END
ヒント(プログラミン①) ● テーマ:ボールをよける犬
START
「とめる」ボタンを押すまで
ボールが転がってくる
スペースキーを押したか?
犬が飛ぶ
「ワン」と鳴く
P.17 A
Yes
No
ページがまたがる 場合の書き方 ①
ヒント(プログラミン②) ● テーマ:ボールをよける犬
ボールが犬に 当たったか?
「ボーン」と鳴る
ボールが破裂する
END
P.16 A
Yes
No
ページがまたがる 場合の書き方 ②