応用情報技術者 2022年 春期 午前2 問07
問題文
プログラム言語のうち、ブロックの範囲を指定する方法として特定の記号や予約語を用いず、等しい文字数の字下げを用いるという特徴をもつものはどれか。
選択肢
ア:C
イ:Java
ウ:PHP
エ:Python(正解)
プログラム言語のうち、ブロックの範囲を指定する方法として特定の記号や予約語を用いず、等しい文字数の字下げを用いるという特徴をもつものはどれか【午前2 解説】
要点まとめ
- 結論:ブロックの範囲を字下げ(インデント)で示す言語はPythonです。
- 根拠:Pythonは波括弧やbegin/endなどの記号を使わず、インデントの深さで構造を明示します。
- 差がつくポイント:他の言語は波括弧やキーワードでブロックを囲むため、インデントは見やすさのための慣習であり必須ではありません。
正解の理由
Pythonはコードの可読性を重視し、ブロックの範囲を字下げの深さで明確にします。例えば、if文や関数定義の内部はインデントで示され、波括弧やendなどの記号は一切使いません。これにより、コードの構造が視覚的に分かりやすくなります。
一方、CやJava、PHPは波括弧
一方、CやJava、PHPは波括弧
{} を用いてブロックを囲むため、インデントは必須ではなくスタイルの問題に留まります。したがって、字下げでブロックを指定する特徴を持つのはエ: Pythonです。よくある誤解
波括弧を使わない言語はすべてインデントでブロックを示すと思いがちですが、Python以外の多くの言語は明示的な記号でブロックを区切ります。
また、インデントは見た目の整え方であって構文の一部ではない言語も多いです。
また、インデントは見た目の整え方であって構文の一部ではない言語も多いです。
解法ステップ
- 問題文の「特定の記号や予約語を用いず」と「等しい文字数の字下げを用いる」という条件を確認する。
- C、Java、PHPは波括弧
{}を使うことを思い出す。 - Pythonはインデントの深さでブロックを示す特徴があることを知っているか確認する。
- 条件に合致する言語としてPythonを選択する。
選択肢別の誤答解説
- ア: C
波括弧{}でブロックを囲むため、字下げは構文上必須ではありません。 - イ: Java
C同様に波括弧{}を使い、インデントはスタイルの一部です。 - ウ: PHP
PHPも波括弧{}でブロックを示し、インデントは任意です。 - エ: Python
インデントの深さでブロックを示す唯一の言語であり、正解です。
補足コラム
Pythonのインデントは単なる見た目の問題ではなく、構文の一部です。インデントが不揃いだと構文エラーになります。
この設計はコードの可読性を高め、バグの発見を容易にするメリットがあります。
一方で、インデントのミスがエラーにつながるため、初心者には注意が必要です。
この設計はコードの可読性を高め、バグの発見を容易にするメリットがあります。
一方で、インデントのミスがエラーにつながるため、初心者には注意が必要です。
FAQ
Q: なぜPythonはインデントでブロックを示すのですか?
A: コードの可読性を高め、構造を視覚的に明確にするためです。
A: コードの可読性を高め、構造を視覚的に明確にするためです。
Q: 他の言語でもインデントは重要ですか?
A: はい、可読性のために推奨されますが、構文上は必須ではありません。
A: はい、可読性のために推奨されますが、構文上は必須ではありません。
Q: Pythonでインデントが揃っていないとどうなりますか?
A: インデントエラーとなり、プログラムは実行されません。
A: インデントエラーとなり、プログラムは実行されません。
関連キーワード: インデント、ブロック構造、Python, プログラミング言語、コード可読性

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

