応用情報技術者試験 応用情報技術者試験 令和2年度 午前 問7: オブジェクト指向のプログラム言語であり,クラスや関数,条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
のプログラム言語であり,クラスや関数,条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
65.01%
問題本文
オブジェクト指向のプログラム言語であり,クラスや関数,条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
選択肢
- ア.JavaScript
- イ.Perl
- ウ.Python
- エ.Ruby
解説
プログラム言語ごとのコードブロック(クラス・関数・条件文などの範囲)の表し方を問う問題。多くの言語は中括弧 { } や begin/end といった記号でブロックを区切るが、Python はインデント(行頭の字下げ)の深さそのものでブロックの範囲を表す「オフサイドルール」を採用している点が特徴であり、ウが正解。
選択肢ごとの解説
- ア.JavaScript はブロックを中括弧 { } で囲んで指定する言語であり、インデントでブロックを区切る仕様ではないため誤り。
- イ.Perl もブロックを中括弧 { } で表す言語であり、インデント方式ではないため誤り。
- ウ.Python はインデントの深さでコードブロックの範囲を指定する仕様であり、設問の説明に合致するため正しい。
- エ.Ruby はブロックの終わりを end で示す言語であり、インデントでブロックを区切る仕様ではないため誤り。
応用情報技術者試験 令和2年度 午前 の過去問一覧へ戻る・問7