【情報Ⅰ】コンピュータとプログラミング 例題20選|共通テスト対策完全ガイド
|
20万件以上の案件から、副業に最適なリモート・週3〜の案件を一括検索できるプラットフォーム。プロフィール登録でAIスカウトが自動的にマッチング案件を提案。市場統計や単価相場、エージェントの口コミも無料で閲覧可能なため、本業を続けながら効率的に高単価の副業案件を探せます。フリーランスボード |
|
| |
週2〜3日から働ける柔軟な案件が業界トップクラスの豊富さを誇るフリーランスエージェント。エンド直契約のため高単価で、週3日稼働でも十分な報酬を得られます。リモートや時間フレキシブルな案件も多数。スタートアップ・ベンチャー中心で、トレンド技術を使った魅力的な案件が揃っています。専属エージェントが案件紹介から契約交渉までサポート。利用企業2,000社以上の実績。ITプロパートナーズ |
| |
10,000件以上の案件を保有し、週3日〜・フルリモートなど柔軟な働き方に対応。高単価案件が豊富で、報酬保障制度(60%)や保険料負担(50%)など正社員並みの手厚い福利厚生が特徴。通勤交通費(月3万円)、スキルアップ費用(月1万円)の支給に加え、リロクラブ・freeeが無料利用可能。非公開案件80%以上、支払いサイト20日で安心して稼働できます。Midworks |
2025年度大学入学共通テストから必須科目となった「情報Ⅰ」。本記事では、その中でも重要な「コンピュータとプログラミング」分野について、基礎から応用まで徹底解説します。実践的な例題20問を通じて、確実に得点できる力を身につけましょう。
目次
- 1 コンピュータとプログラミングとは
- 2 重要ポイント解説
- 3 例題20選
- 3.1 【第1問】コンピュータの基本構成
- 3.2 【第2問】2進数の計算
- 3.3 【第3問】16進数の理解
- 3.4 【第4問】変数の代入
- 3.5 【第5問】条件分岐の基本
- 3.6 【第6問】繰り返し処理(for文)
- 3.7 【第7問】繰り返し処理(while文)
- 3.8 【第8問】配列の操作
- 3.9 【第9問】最大値の探索
- 3.10 【第10問】探索アルゴリズム(線形探索)
- 3.11 【第11問】フローチャートの読解
- 3.12 【第12問】論理演算(AND)
- 3.13 【第13問】論理演算(OR)
- 3.14 【第14問】バブルソート
- 3.15 【第15問】2分探索
- 3.16 【第16問】関数の理解
- 3.17 【第17問】再帰関数
- 3.18 【第18問】文字列操作
- 3.19 【第19問】リストの操作
- 3.20 【第20問】アルゴリズムの効率性
- 4 学習のコツとまとめ
- 5 参考リンク・関連記事
- 6 おわりに
- 7 ■らくらくPython塾 – 読むだけでマスター
- 8 【現役エンジニア歓迎】プログラミング学習お悩み相談会
コンピュータとプログラミングとは
学習範囲の概要
「コンピュータとプログラミング」は情報Ⅰの中核をなす分野で、以下の内容を含みます:
- コンピュータの仕組み: ハードウェアとソフトウェア、CPUの役割
- アルゴリズム: 問題解決の手順と表現方法(フローチャート、擬似言語)
- プログラミング: 変数、条件分岐、繰り返し処理
- データ構造: 配列、リストなどの基本的なデータの扱い方
共通テストでの出題傾向
- プログラムの穴埋め問題
- フローチャートの読解
- アルゴリズムのトレース(実行結果の予測)
- 計算量や効率性の判断
重要ポイント解説
1. コンピュータの構成要素
五大装置: 入力装置、出力装置、記憶装置、演算装置、制御装置
CPUの役割: プログラムの命令を読み込み、演算・制御を行う中央処理装置
メモリとストレージ:
- メモリ(RAM): 高速だが揮発性(電源を切ると消える)
- ストレージ(HDD/SSD): 低速だが不揮発性(データが残る)
2. アルゴリズムの基本
順次処理: 上から順に実行 条件分岐: if文による処理の分岐 繰り返し: for文、while文によるループ処理
3. プログラミングの基礎
変数: データを格納する箱 代入: 変数に値を入れる操作(例: x = 10) 演算: 四則演算、比較演算、論理演算
例題20選
【第1問】コンピュータの基本構成
問題: CPUに含まれる装置の組み合わせとして正しいものはどれか。
A. 入力装置と出力装置
B. 演算装置と制御装置
C. 記憶装置と入力装置
D. 出力装置と記憶装置
解答: B
解説: CPU(中央処理装置)は、演算装置(ALU)と制御装置から構成されます。記憶装置、入力装置、出力装置はCPUとは別の装置です。
【第2問】2進数の計算
問題: 2進数 1011 と 0110 を足した結果を2進数で表すとどうなるか。
A. 10001
B. 10010
C. 10011
D. 11001
解答: A
解説:
1011 (10進数で11)
+ 0110 (10進数で6)
------
10001 (10進数で17)
各桁を足し、2になったら繰り上がりが発生します。
【第3問】16進数の理解
問題: 16進数の「A3」を10進数に変換するといくつになるか。
A. 103
B. 163
C. 183
D. 243
解答: B
解説: A3 = 10×16¹ + 3×16⁰ = 160 + 3 = 163
16進数では A=10, B=11, C=12, D=13, E=14, F=15 を表します。
【第4問】変数の代入
問題: 次のプログラムを実行したとき、最後のxの値はいくつか。
x = 5
y = 3
x = x + y
y = x - 2
x = y * 2
A. 6
B. 8
C. 10
D. 12
解答: D
解説:
- x = 5, y = 3
- x = 5 + 3 = 8
- y = 8 – 2 = 6
- x = 6 × 2 = 12
【第5問】条件分岐の基本
問題: 次のプログラムで、x = 7 のとき出力される値は何か。
x = 7
if x > 10:
y = x * 2
else:
y = x + 3
A. 7
B. 10
C. 14
D. 20
解答: B (実際には10)
解説: x = 7 は 10 より大きくないため、else節が実行されます。 y = 7 + 3 = 10
【第6問】繰り返し処理(for文)
問題: 次のプログラムを実行したとき、sumの最終値はいくつか。
sum = 0
for i in range(1, 5):
sum = sum + i
A. 5
B. 10
C. 15
D. 20
解答: B
解説: range(1, 5)は1, 2, 3, 4の4回ループします。 sum = 0 + 1 + 2 + 3 + 4 = 10
【第7問】繰り返し処理(while文)
問題: 次のプログラムで、ループが終了したときのxの値はいくつか。
x = 1
while x < 10:
x = x * 2
A. 8
B. 10
C. 12
D. 16
解答: D
解説: 1回目: x = 1 × 2 = 2 (< 10なので継続) 2回目: x = 2 × 2 = 4 (< 10なので継続) 3回目: x = 4 × 2 = 8 (< 10なので継続) 4回目: x = 8 × 2 = 16 (≥ 10なのでループ終了)
【第8問】配列の操作
問題: 次のプログラムで、data[2]の値はいくつか。
data = [10, 20, 30, 40, 50]
data[2] = data[1] + data[3]
A. 20
B. 30
C. 50
D. 60
解答: D
解説: 配列のインデックスは0から始まります。 data[1] = 20, data[3] = 40 data[2] = 20 + 40 = 60
【第9問】最大値の探索
問題: 次のアルゴリズムは何を求めているか。
data = [5, 2, 8, 1, 9]
max_val = data[0]
for i in range(1, 5):
if data[i] > max_val:
max_val = data[i]
A. 最小値
B. 最大値
C. 平均値
D. 合計値
解答: B
解説: データの中から最大値を見つけるアルゴリズムです。各要素を順に比較し、より大きい値が見つかれば更新していきます。
【第10問】探索アルゴリズム(線形探索)
問題: 要素数nの配列から特定の値を線形探索で探す場合、最悪の場合の比較回数は何回か。
A. 1回
B. n/2回
C. n回
D. n²回
解答: C
解説: 線形探索は先頭から順に探すため、目的の値が最後にある場合や存在しない場合、n回の比較が必要になります。
【第11問】フローチャートの読解
問題: 次のフローチャートで、入力が15のとき出力される値はいくつか。
[開始]
↓
[x を入力]
↓
[x > 10] → いいえ → [y = x + 5]
↓はい ↓
[y = x × 2] ↓
↓ ↓
[y を出力] ←──────────┘
↓
[終了]
A. 15
B. 20
C. 25
D. 30
解答: D
解説: x = 15 は 10 より大きいので、y = 15 × 2 = 30 が実行されます。
【第12問】論理演算(AND)
問題: 次の条件式が真(True)になるのはどの場合か。
(x > 5) and (x < 10)
A. x = 3
B. x = 7
C. x = 10
D. x = 12
解答: B
解説: andは両方の条件が真のときのみ真になります。 x = 7 のとき、(7 > 5) = 真 かつ (7 < 10) = 真 なので、全体が真になります。
【第13問】論理演算(OR)
問題: 次の条件式が偽(False)になるのはどの場合か。
(x < 0) or (x > 100)
A. x = -5
B. x = 0
C. x = 50
D. x = 150
解答: C
解説: orはどちらか一方でも真なら真になります。 x = 50 のとき、(50 < 0) = 偽 かつ (50 > 100) = 偽 なので、全体が偽になります。
【第14問】バブルソート
問題: バブルソートで配列[5, 2, 8, 1]を昇順にソートする場合、1回目のパスで先頭の要素は何になるか。
A. 1
B. 2
C. 5
D. 8
解答: B
解説: バブルソートの1回目のパスでは: [5, 2, 8, 1] → [2, 5, 8, 1] → [2, 5, 8, 1] → [2, 5, 1, 8] 最大値の8が最後に移動し、先頭は2になります。
【第15問】2分探索
問題: 要素数nの整列済み配列に対して2分探索を行う場合、最悪の場合の比較回数はどれか。
A. log₂n回
B. n回
C. n log₂n回
D. n²回
解答: A
解説: 2分探索は探索範囲を毎回半分にするため、計算量はO(log₂n)です。例えば、1024個のデータでも最大10回の比較で見つかります。
【第16問】関数の理解
問題: 次の関数を呼び出したとき、返される値はいくつか。
def calculate(a, b):
return a * b + 10
result = calculate(3, 4)
A. 12
B. 17
C. 22
D. 34
解答: C
解説: calculate(3, 4) = 3 × 4 + 10 = 12 + 10 = 22
【第17問】再帰関数
問題: 次の再帰関数でfact(4)を呼び出したとき、返される値はいくつか。
def fact(n):
if n == 1:
return 1
else:
return n * fact(n - 1)
A. 4
B. 10
C. 24
D. 120
解答: C
解説: これは階乗を求める関数です。 fact(4) = 4 × fact(3) = 4 × 3 × fact(2) = 4 × 3 × 2 × fact(1) = 4 × 3 × 2 × 1 = 24
【第18問】文字列操作
問題: 次のプログラムの出力はどれか。
text = "Python"
print(text[1:4])
A. Pyt
B. yth
C. tho
D. hon
解答: B
解説: スライス[1:4]は、インデックス1から3まで(4は含まない)を取得します。 P(0), y(1), t(2), h(3), o(4), n(5) より、”yth”が出力されます。
【第19問】リストの操作
問題: 次のプログラムを実行したとき、numbersの内容はどうなるか。
numbers = [1, 2, 3]
numbers.append(4)
numbers.insert(0, 0)
A. [1, 2, 3, 4, 0]
B. [0, 1, 2, 3, 4]
C. [0, 4, 1, 2, 3]
D. [1, 2, 3, 0, 4]
解答: B
解説:
- append(4): [1, 2, 3, 4]
- insert(0, 0): インデックス0に0を挿入 → [0, 1, 2, 3, 4]
【第20問】アルゴリズムの効率性
問題: 2つのアルゴリズムA(計算量O(n))とB(計算量O(n²))がある。データ量nが100のとき、アルゴリズムBはAの約何倍の処理時間がかかるか。
A. 2倍
B. 10倍
C. 100倍
D. 10000倍
解答: C
解答:
- アルゴリズムA: O(n) = 100回
- アルゴリズムB: O(n²) = 100² = 10,000回
- 比率: 10,000 ÷ 100 = 100倍
計算量が違うと、データ量が増えたときの処理時間の差が大きくなります。
学習のコツとまとめ
効果的な学習方法
- プログラムを実際に書いて動かす: 理論だけでなく、実際にコードを書いて実行結果を確認しましょう
- トレースの練習: プログラムの各行で変数がどう変化するか、紙に書いて追う練習が重要です
- アルゴリズムの理解: 暗記ではなく「なぜそうなるのか」を理解することが大切です
- 過去問演習: 共通テストの形式に慣れるため、過去問や予想問題を解きましょう
押さえておくべき重要事項
- 基本構文: 条件分岐、繰り返し、配列操作は確実に理解する
- アルゴリズム: 探索、整列の基本的なアルゴリズムを理解する
- トレース能力: プログラムの実行結果を正確に追える力を養う
- 計算量: アルゴリズムの効率性を判断できるようにする
よくある間違い
- 配列のインデックス: 0から始まることを忘れない
- range関数: 終了値は含まれない(range(1, 5)は1,2,3,4)
- 条件式の評価順: andとorの優先順位に注意
- 変数の更新: x = x + 1 のような自己代入の理解
参考リンク・関連記事
- 情報Ⅰ 全体の学習ガイド
- データの活用 分野の対策
- 情報デザイン 分野の対策
- 共通テスト対策 総まとめ
おわりに
「コンピュータとプログラミング」は、情報Ⅰの中でも特に実践的な分野です。本記事の例題20問を繰り返し解き、解説をしっかり理解することで、共通テストでの得点力が確実に向上します。
プログラミングは最初は難しく感じるかもしれませんが、基本を押さえて練習を重ねれば必ず理解できるようになります。焦らず、一歩ずつ確実に学習を進めていきましょう。
頑張ってください!応援しています!
テックジム東京本校では「情報」科目の受験対策指導もいたします。
この記事は2025年度大学入学共通テスト「情報Ⅰ」の受験対策用に作成されています。
関連キーワード: 情報Ⅰ、共通テスト、コンピュータとプログラミング、アルゴリズム、プログラミング基礎、受験対策、例題、過去問、Python、フローチャート、データ構造
|
20万件以上の案件から、副業に最適なリモート・週3〜の案件を一括検索できるプラットフォーム。プロフィール登録でAIスカウトが自動的にマッチング案件を提案。市場統計や単価相場、エージェントの口コミも無料で閲覧可能なため、本業を続けながら効率的に高単価の副業案件を探せます。フリーランスボード |
|
| |
週2〜3日から働ける柔軟な案件が業界トップクラスの豊富さを誇るフリーランスエージェント。エンド直契約のため高単価で、週3日稼働でも十分な報酬を得られます。リモートや時間フレキシブルな案件も多数。スタートアップ・ベンチャー中心で、トレンド技術を使った魅力的な案件が揃っています。専属エージェントが案件紹介から契約交渉までサポート。利用企業2,000社以上の実績。ITプロパートナーズ |
| |
10,000件以上の案件を保有し、週3日〜・フルリモートなど柔軟な働き方に対応。高単価案件が豊富で、報酬保障制度(60%)や保険料負担(50%)など正社員並みの手厚い福利厚生が特徴。通勤交通費(月3万円)、スキルアップ費用(月1万円)の支給に加え、リロクラブ・freeeが無料利用可能。非公開案件80%以上、支払いサイト20日で安心して稼働できます。Midworks |
