情報処理安全確保支援士試験 情報処理安全確保支援士試験 令和2年度 午前Ⅰ 問3: オブジェクト指向のプログラム言語であり,クラスや関数,条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
のプログラム言語であり,クラスや関数,条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
問題本文
オブジェクト指向のプログラム言語であり,クラスや関数,条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
選択肢
- ア.JavaScript
- イ.Perl
- ウ.Python
- エ.Ruby
解説
Pythonはインデント(字下げ)の深さでブロック範囲を表す代表的な言語で、波括弧やbegin/endを使わない。可読性が高く、機械学習やスクリプトで広く使われる。他のJavaScript・Perl・Rubyはいずれも波括弧やキーワードでブロックを区切るため、インデントが構文上意味を持つのはPythonの特徴であり、ウが正しい。
選択肢ごとの解説
- ア.JavaScriptは波括弧{}でブロックを囲む言語で、インデントは構文上の意味を持たないため誤り。
- イ.Perlは波括弧{}でブロックを区切る言語で、インデントの深さで範囲を指定しないため誤り。
- ウ.インデントの深さでコードブロックの範囲を表すオブジェクト指向言語はPythonであり正しい。
- エ.Rubyはdo〜endやif〜endのキーワードでブロックを区切り、インデント依存ではないため誤り。
情報処理安全確保支援士試験 令和2年度 午前Ⅰ の過去問一覧へ戻る・問3