本文へスキップ

制御構造と表現手法

標準約 32 分6 用語過去問 18 題

この単元の目標

  • 3 つの 基本制御構造 を、処理の進み方 (一本道か、分かれるか、戻るか) で見分けられる
  • 繰返しの 前判定 と 後判定、継続条件 と 終了条件 の違いを説明できる
  • 流れ図 の主な図記号と 擬似言語 の基本の書き方を読み、変数の値の変化をたどれる
用語総表(6 語)
用語ひとことで区分見分ける手がかり
順次書かれた順に上から 1 つずつ実行する制御構造制御構造分かれ道も戻りもない一本道
選択条件の真偽で次に実行する処理を切り替える制御構造制御構造条件の結果ごとに別の処理へ分かれる
繰返し条件を判定しながら同じ処理の範囲を繰り返し実行する制御構造制御構造同じ処理の範囲を何度も通る
流れ図処理の手順を図記号と矢印で表した図表現手法端子や判断などの記号を線でつなぐ
フローチャート流れ図の英語名で、同じ図を指す表現手法呼び名が違うだけで中身は流れ図と同じ
擬似言語特定の言語に縛られずに手順を決まった書式の文字で書く表記法表現手法代入の矢印や if・while などの書式で書く

用語

順次 は、処理を書かれた順に上から 1 つずつ実行していく制御構造である。

  1. a に 5 を入れる
  2. b に 3 を入れる
  3. a と b の和を表示する

最後の処理で和の 8 を表示して終わる。途中で分かれも戻りもしない。

3 / 3

アルゴリズム は目的を果たすための処理の手順のことで、どんな手順も順次に 選択 と 繰返し を加えた 3 つの 基本制御構造 の組合せで書ける (構造化定理)。順次では分かれ道も戻りもなく、処理が一本道で進む。

たとえカップ麺を作るときに、お湯を注ぐ、待つ、ふたを開ける、を書いてある順にこなすのと同じ。

出題のポイント

  • 出題アルゴリズムは特定の目的を果たすための処理の手順そのものを指す。書き表す言語を変えても、手順の中身は変わらない。
  • 出題繰り返す範囲に並べた複数の処理も順次で実行され、1 周ごとに上から同じ順で実行し直される。

この用語の過去問 2 題 順次

選択 は、条件 が成り立つ (真) か成り立たない (偽) かによって、次に実行する処理を切り替える制御構造である。

  • 点数は 80 以上か
    • 真: 評価 A
    • 偽: 点数は 60 以上か
      • 真: 評価 B
      • 偽: 評価 C

2 つ目の条件の真偽で評価 B か C に分かれる。選択を入れ子にすると 3 通り以上に分けられる。

3 / 3

分岐 とも呼び、図で描くときはひし形の 判断 の記号から真と偽 (Yes と No) などの結果ごとに線を出す。選択の中に別の選択を入れると、3 通り以上に処理を分けられる。

たとえ駅の改札で、切符が有効なら扉が開き、無効なら閉じたままになる仕組み。

覚え方英語では selection、プログラムでは if (もし) で始める書き方が多い。

出題のポイント

  • 出題選択の内側に別の選択を入れる (入れ子にする) と、外側の条件で進んだ側にある内側の条件で、更に処理が分かれる。
  • 出題判断を縦に並べてデータを区分ごとに振り分けるときは、該当する件数の多い区分を先に調べるほど比較の合計回数が減る。

この用語の過去問 2 題 選択

繰返し は、条件を判定しながら同じ処理の範囲 (本体) を繰り返し実行する制御構造で、ループ ともいう。

真

偽

処理の開始

継続条件は真か

処理を実行

繰返しを終了

条件を調べる位置によって、処理の前に調べる 前判定 と、処理の後に調べる 後判定 がある。条件には、成り立つ間続ける 継続条件 と、成り立ったら抜ける 終了条件 の書き方がある。回数を決めて回すときは、変数の 初期値・増分・終値 を指定する。

たとえ階段を上るときに、まだ上の段があるかを確かめ、あれば 1 段上がり、なくなったら止まる動き。

覚え方ループ (loop) は英語で「輪」の意味。判断の記号で描く図では矢印が輪のように上へ戻り、同じ範囲をもう一度通る。

出題のポイント

  • 出題繰返しの結果を求めるには、1 周ごとに変数の値を書き出し、終了の判定が成り立つ周で止める。
  • 出題1 ずつ数える繰返しでは、カウンタの初期値と終了判定の境目 (未満か以下か) の組合せで実行回数が決まる。どちらかを 1 ずらすと回数も 1 回ずれる。
  • 出題変数を初期値から増分ずつ変えて終値まで回す繰返しでは、変数がとる値の並び (例えば 1 から 9 まで 4 ずつなら 1, 5, 9) が本体の計算に使われる。

この用語の過去問 3 題 繰返し

「選択」と「繰返し」の違い

観点選択繰返し
決め手条件を調べた後結果に応じた処理を行い、先へ進む結果に応じて、本体を実行して再び判定するか、繰返しを抜ける
同じ処理の実行回数多くても 1 回前判定なら 0 回以上、後判定なら 1 回以上

流れ図 は、処理の手順を決められた図記号と矢印 (流れ線) でつないで表した図である。

記号の名前形表すもの
端子両端が丸い横長の形開始と終了
処理長方形計算や代入などの処理
判断ひし形条件による分かれ道
ループ端角を落とした長方形 (上下で対)繰返しの始まりと終わり
流れ線線・矢印処理の進む向き

主な図記号には、例えば開始と終了を示す 端子、計算などを表す 処理、条件で道を分ける 判断、繰返しの範囲を上下から挟む ループ端 がある。上から下、左から右へ読むのが基本で、それ以外の向きに進むときは矢印で示す。3 つの基本制御構造は、記号を縦につなぐ形、判断で分かれる形、ループ端で挟む形 (または判断から上へ戻る形) で描ける。

たとえ道案内の地図に、分かれ道と回り道を決まった印で書き込み、矢印で進む向きを示したもの。

出題のポイント

  • 出題ループ端には、繰返しの条件か、変数の初期値・増分・終値を書く。条件を終了条件として書いたときは、ループ端の位置で判定して成り立てば繰返しを抜ける。
  • 出題流れ図の結果は、データごとに判断の分岐を線に沿ってたどって求める。ある枝へ進んだデータは、別の枝にある判断を通らない。

この用語の過去問 2 題 流れ図

フローチャート は流れ図の英語名 (flowchart) で、同じ図を指す。

呼び名が違うだけで、使う記号も読み方も流れ図と同じである。プログラムの処理手順に限らず、仕事の進め方を図にするときにも使う。

覚え方flow (流れ) と chart (図) をそのまま訳すと「流れ図」になる。

出題のポイント

  • 出題フローチャートは、プログラムなどの処理の順序と分かれ道を、図記号でたどれるように描いた図である。
  • 混同注意データフローダイアグラム (DFD) は、データがどこから来てどの処理を通り、どこへ蓄えられるかを描く図である。フローチャートが描くのは処理を行う順序である。

この用語の過去問 1 題 フローチャート

擬似言語 は、特定のプログラム言語の文法に縛られずに、アルゴリズムを文章に近い決まった書式で記述する表記法である。

書き方意味
変数 ← 式式の値を変数に代入する
if (条件) … else … endif選択
while (条件) … endwhile条件が成り立つ間の繰返し (前判定)
for (変数の変え方) … endfor変数を変えながら回す繰返し
○ 型: 名前(引数)関数の宣言 (型は戻り値の型)
○ 名前(引数)戻り値の無い手続の宣言
return 値戻り値を返して終わる

2022 年度以降の過去問で使われている書式では、代入を「←」で表し、右側の式の値を左側の変数に入れる。選択は if 〜 endif、繰返しは while 〜 endwhile や for 〜 endfor で挟み、字下げで本体の範囲を示す。処理をまとめた関数では、受け取る値を 引数、返す値を 戻り値 と呼ぶ。

たとえどの店の厨房でも使えるように、決まった記号と言い回しだけで書いたレシピのメモ。

覚え方「擬似」は「本物に似せた」の意味。本物のプログラム言語に似せた書き方である。

出題のポイント

  • 出題「a ← a × 2」は等式ではなく、今の a を 2 倍した値で a を置き換える代入である。
  • 出題while の条件は継続条件であり、成り立つ間だけ本体を実行し、成り立たなくなったら endwhile の次へ進む。
  • 出題for の中に if があると、各周で条件を判定し、真なら if 側、偽なら else 側の処理を実行する。else が無ければ、偽の周では if と endif の間の処理を実行しない。

この用語の過去問 3 題 擬似言語

「流れ図」と「擬似言語」の違い

観点流れ図擬似言語
決め手表し方図記号と矢印で描く文字と決まった書式で書く
繰返しの範囲の示し方ループ端で挟む、または矢印で判定へ戻すwhile や for と、対になる終わりの語で挟み、字下げする

要点

  • どのアルゴリズムも、順次・選択・繰返しの 3 つの基本制御構造の組合せで書ける。
  • 流れ図とフローチャートは同じ図を指す呼び名で、端子や判断、ループ端などの記号で手順を描く。
  • 擬似言語の「←」は代入で、右側の式の値で左側の変数を置き換える。
  • 回数を決めた繰返しでは、変数の初期値・増分・終値によって実行回数と変数がとる値が決まる。

確認問題

この単元の過去問から 5 題

確認問題を解く

この分野の過去問をすべて見る