共通テスト 情報Ⅰ・4-4

制御構造(条件分岐・反復)の一問一答

共通テスト「情報Ⅰ」の「アルゴリズムとプログラミング」から、制御構造(条件分岐・反復)に関する4択問題を10問。「答えと解説を見る」を開くと、正解とその理由がその場で読めます。会員登録は不要です。

この分野の演習

全10問/解説付き・基本無料

アプリ形式で解く(全800問) アルゴリズムとプログラミングの要点解説を読む
問題

上から順に解いてみてください。答えは各問の下で確認できます。

問14-4・基礎

共通テスト用プログラム表記で条件分岐を行う もし〜ならば: において、「条件が成立しなかった場合」に実行する処理の前に記述する語句はどれか?

  • ①もし〜ならば
  • ②〜の間繰り返す
  • ③そうでなければ
  • ④そうでなくもし〜ならば
答えと解説を見る
正解 ③そうでなければ
解説
正解は「そうでなければ」。もし〜ならば A、そうでなければ B、の形で、条件が偽のときに B を実行します。

なぜ
共通テスト用プログラム表記では、もし 条件 ならば: の後に真のときの処理を、そうでなければ: の後に偽のときの処理を書きます。どちらか一方だけが実行され、両方が実行されることはありません。Python などの言語の else にあたります。

ひっかけ注意

・「もし〜ならば」…条件分岐の始まり。もし x < 3 ならば: のように書き、条件が真のときの処理を示す。
・「〜の間繰り返す」…条件が真である間、処理を何回も繰り返す反復の書き方。分岐のように1回選ぶだけではない。
・「そうでなくもし〜ならば」…前の条件が偽のときだけ、次の条件を調べる。3通り以上に分けるときに使う。
問24-4・基礎

Python や JavaScript などの言語で、繰り返し処理を行う for 文や while 文の途中で、ループを強制的に中断して抜け出すための命令はどれか?

  • ①continue
  • ②return
  • ③stop
  • ④break
答えと解説を見る
正解 ④break
解説
正解は「break」。実行した時点で繰り返しを終わらせ、繰り返しの後ろの処理へ進みます。

なぜ
探していたデータが見つかったら、残りを調べる必要はありません。そこで break を実行すれば、むだな繰り返しを省けます。共通テスト用プログラム表記の例示には break にあたる命令が無く、owari == 0 の間繰り返す のように、目印の変数を条件に入れて終わらせます。

ひっかけ注意

・「continue」…今回の繰り返しの残りだけを飛ばし、次の回に進む命令。繰り返し自体からはぬけない。
・「return」…関数を終えて、呼び出し元に戻り値を返す命令。繰り返しだけでなく関数ごと終わる。
・「stop」…Python の予約語(キーワード)の一覧に無い語。繰り返しを止める命令としては決められていない。
問34-4・基礎

「回数を指定して繰り返す」場合に適している書き方と、「条件を満たす間繰り返す」場合に適している書き方の組み合わせとして、共通テスト用プログラム表記で正しいものはどれか?

  • ①回数:〜まで増やしながら繰り返す/条件:〜の間繰り返す
  • ②回数:〜の間繰り返す/条件:〜まで増やしながら繰り返す
  • ③回数:もし〜ならば/条件:そうでなくもし〜ならば
  • ④回数:そうでなくもし〜ならば/条件:そうでなければ
答えと解説を見る
正解 ①回数:〜まで増やしながら繰り返す/条件:〜の間繰り返す
解説
正解は「回数:〜まで増やしながら繰り返す/条件:〜の間繰り返す」。回数が決まっていれば i を 0 から 9 まで 1 ずつ増やしながら繰り返す、条件しだいなら n < 10 の間繰り返す、が向いています。

なぜ
前者は、変数を決まった範囲で変えながら繰り返すので、回数が先に決まります(0 から 9 までなら10回)。後者は、条件が真である間繰り返し、いつ終わるかは条件で決まります。Python などの言語の for 文と while 文にあたります。

ひっかけ注意

・「回数:〜の間繰り返す/条件:〜まで増やしながら繰り返す」…組み合わせが逆。〜の間繰り返す は、条件が偽になるまで回数が決まらない。
・「回数:もし〜ならば/条件:そうでなくもし〜ならば」…どちらも条件分岐の書き方で、処理を1回選ぶだけで繰り返さない。
・「回数:そうでなくもし〜ならば/条件:そうでなければ」…これも分岐の書き方。そうでなければ は、上の条件がすべて偽のときの処理。
問44-4・基礎

論理演算子 「and」(かつ)の動作として正しい記述はどれか?

  • ①どれか一つの条件でも真なら、全体が真になる
  • ②すべての条件が真のときだけ、全体が真になる
  • ③すべての条件が偽のときだけ、全体が真になる
  • ④ただ一つの条件だけが真のとき、全体が真になる
答えと解説を見る
正解 ②すべての条件が真のときだけ、全体が真になる
解説
正解は「すべての条件が真のときだけ、全体が真になる」。A and B は、A も B も真のときだけ真です。

なぜ
どれか1つでも偽があれば、全体は偽になります。共通テスト用プログラム表記では、論理積を and、論理和を or、否定を not で表します。not は真と偽を入れ替えます。

ひっかけ注意

・「どれか一つの条件でも真なら、全体が真になる」…or(論理和)の働き。A or B は、A と B の両方が偽のときだけ偽。
・「すべての条件が偽のときだけ、全体が真になる」…or の結果を反対にした働き(NOR)。2つの条件なら真偽の4通りのうち、両方が偽の1通りだけ真。not (A or B) と同じ。
・「ただ一つの条件だけが真のとき、全体が真になる」…条件が2つなら、片方だけ真のとき真の働き(XOR)。両方が真なら偽になる。
問54-4・基礎

入れ子構造(ネスト)になったループ処理において、二重ループの外側 i が 0〜2、その中の内側 j が 0〜3 と1ずつ増えるとき、内側の処理は合計何回実行されるか?

  • ①7回 (3+4)
  • ②4回 (内側の回数のみ)
  • ③12回 (3×4)
  • ④3回 (外側の回数のみ)
答えと解説を見る
正解 ③12回 (3×4)
解説
正解は「12回 (3×4)」。外側が1回まわるたびに、内側が4回まわります。

手順
①外側の i は 0、1、2 の3回。
②内側の j は 0、1、2、3 の4回。
③合計は 4 + 4 + 4 = 12回。共通テスト用プログラム表記では、外側の繰り返しの中に|を付けて内側の繰り返しを書き、最後の行を ⎿ ⎿ で閉じる。

ひっかけ注意

・「7回 (3+4)」…回数を足した誤り。外側の1回ごとに内側が4回全部繰り返されるので、かけ算 3×4 になる。
・「4回 (内側の回数のみ)」…外側の i = 0 の1回分だけを数えた誤り。i = 1、2 のときも内側は4回ずつ動く。
・「3回 (外側の回数のみ)」…内側の繰り返しを数えていない。0 から 2 までは3回、0 から 3 までは4回。
問64-4・基礎

条件式 x >= 10 が「真」となる x の値はどれか?

  • ①9 または 10
  • ②11 のみ(10は含まない)
  • ③10 のみ(11は含まない)
  • ④10 または 11
答えと解説を見る
正解 ④10 または 11
解説
正解は「10 または 11」。>= は以上という意味で、10 そのものも含みます。

なぜ
x >= 10 は、x が 10 より大きいか、10 と等しいときに真になります。10 も 11 も条件に合います。10 を含まないのは x > 10 のほうです。

ひっかけ注意

・「9 または 10」…9 >= 10 は偽。9 は 10 より小さいので、10 以上に当たらない。
・「11 のみ(10は含まない)」…x > 10(10 より大きい)の場合の答え。>= は等しい 10 も含む。
・「10 のみ(11は含まない)」…x == 10(等しい)の場合の答え。>= は 11 のような大きい数も含む。
問74-4・標準

1から100までの数字のうち、「3の倍数かつ5の倍数(つまり15の倍数)」を表示したい。条件式として正しいものはどれか?(% は割り算の余りを表す)

  • ①i % 3 == 0 and i % 5 == 0
  • ②i % 3 == 0 or i % 5 == 0
  • ③i / 3 == 0 and i / 5 == 0
  • ④i % 3 == 0 and i % 5 != 0
答えと解説を見る
正解 ①i % 3 == 0 and i % 5 == 0
解説
正解は「i % 3 == 0 and i % 5 == 0」。3で割った余りも5で割った余りも0なら、両方の倍数です。

なぜ
余りが0なら割り切れるので、倍数といえます。両方を満たすことが必要なので and でつなぎます。例えば i = 30 は両方とも余り0で真、i = 9 は5で割ると余り4なので偽です。1から100では、15、30、45、60、75、90 の6個が真になります。

ひっかけ注意

・「i % 3 == 0 or i % 5 == 0」…or なので、3の倍数か5の倍数のどちらかなら真。9 や 10 も入り、1から100では47個になる。
・「i / 3 == 0 and i / 5 == 0」…/ はふつうの割り算。i / 3 が 0 になるのは i = 0 のときだけで、1から100では1つも真にならない。
・「i % 3 == 0 and i % 5 != 0」…!= は等しくない。5の倍数でない3の倍数(3、6、9 など27個)を選び、15 や 30 は偽になる。
問84-4・標準

カウンタ変数 i を使ったループ処理で、i を 0, 2, 4, 6, 8 と2ずつ増やしたい場合、共通テスト用プログラム表記での適切な指定はどれか?

  • ①i を 0 から 10 まで 2 ずつ増やしながら
  • ②i を 0 から 8 まで 2 ずつ増やしながら
  • ③i を 2 から 8 まで 2 ずつ増やしながら
  • ④i を 0 から 8 まで 1 ずつ増やしながら
答えと解説を見る
正解 ②i を 0 から 8 まで 2 ずつ増やしながら
解説
正解は「i を 0 から 8 まで 2 ずつ増やしながら」。最初の値 0、最後の値 8、増やす量 2 をそのまま書きます。

手順
①始まりは最初に使う値なので 0。
②1回ごとに増やす量は 2。
③終わりの値は、最後に使う 8。表記の まで は終わりの値も含む(表記の例示でも、i を 0 から kazu-1 まで で最後の添字まで表示している)。

ひっかけ注意

・「i を 0 から 10 まで 2 ずつ増やしながら」…10 も含むので 0、2、4、6、8、10 の6回になる。Python の range のように終わりを含まない指定と混同しやすい。
・「i を 2 から 8 まで 2 ずつ増やしながら」…2 から始まるので 0 が出てこない。2、4、6、8 の4回だけ。
・「i を 0 から 8 まで 1 ずつ増やしながら」…1ずつ増えるので 0 から 8 までの9回になり、奇数も入る。
問94-4・標準

共通テスト用プログラム表記の条件分岐 もし x > 0 ならば: の条件が「偽」だった場合、次に評価される そうでなくもし x == 0 ならば: も「偽」だった場合、最終的に実行される部分はどこか?(そうでなければ: の処理もある)

  • ①もし の側の処理
  • ②そうでなくもし の側の処理
  • ③そうでなければ の側の処理
  • ④エラーで止まる
答えと解説を見る
正解 ③そうでなければ の側の処理
解説
正解は「そうでなければ の側の処理」。もし も そうでなくもし も当てはまらなかったときの、最後の受け皿です。

なぜ
条件は上から順に調べ、最初に真になった所の処理だけを行います。どれも偽なら、そうでなければ: の後の処理を行います。この問題では x > 0 も x == 0 も偽なので、x は負の数です。

ひっかけ注意

・「もし の側の処理」…x > 0 が偽なので実行されない。真なら、そこで決まって残りの条件は調べない。
・「そうでなくもし の側の処理」…x == 0 も偽なので実行されない。前の条件が偽のときだけ調べられる。
・「エラーで止まる」…条件がすべて偽になるのは正常な流れ。そうでなければ が無い形なら、何もせずに次の行へ進む。
問104-4・基礎

次のプログラムを実行した結果、表示される値はいくつか?
x = 0
x < 3 の間繰り返す:
⎿ x = x + 1
表示する(x)

  • ①2
  • ②4
  • ③0
  • ④3
答えと解説を見る
正解 ④3
解説
正解は「3」。x が 3 になった時点で条件が偽になり、繰り返しを終えてから 3 を表示します。

手順
①x = 0。0 は 3 より小さいので、x は 1 になる。
②x = 1、x = 2 のときも条件は真なので、x は 2、3 と増える。
③x = 3 では 3 < 3 が偽になるので繰り返しを終え、表示する(x) で 3 が表示される。

ひっかけ注意

・「2」…最後に繰り返しに入ったときの x の値。その回の中で 1 を足して 3 になっている。
・「4」…x = 3 でももう1回繰り返すと考えた誤り。3 < 3 は偽なので、繰り返しは3回で終わる。
・「0」…繰り返しの中で x を増やしていることを見落としている。表示は終わった後の1回だけ。

当サイトは、独立行政法人 大学入試センターとは一切関係のない、非公式の学習サイトです。試験に関する最新情報は、大学入試センターの公式サイトでご確認ください。

共通テスト 情報Ⅰ 基礎完全対策(全800問)に戻る

※本ページでは、アクセス解析(Googleアナリティクス)と、広告の配信・成果の計測(A8.net)のためにCookie等を利用し、閲覧に関する情報をGoogle LLC・株式会社ファンコミュニケーションズへ送信しています。詳しくはプライバシーポリシーをご覧ください。

※本ページの問題・解説は、生成AI(人工知能)を活用して作成しています。

【PR】