基本情報技術者試験 / プログラミング基礎(制御構文/関数/例外)

【基本情報技術者試験】プログラミング言語における論理演算子の短絡評価(ショートサーキット評価)に関する記述として、適切なものはどれか。

問題 19 / 30(AIが出題範囲に沿って作成した演習問題。過去問ではありません)

プログラミング言語における論理演算子の短絡評価(ショートサーキット評価)に関する記述として、適切なものはどれか。

  1. 論理積(AND)において左辺が偽である場合、全体の真偽が確定するため右辺の評価は行われない。
  2. 論理式の評価順序を最適化するため、コンパイラが常に右辺から優先して評価を行う。
  3. 論理和(OR)において左辺が偽である場合、全体の真偽が確定するため右辺の評価は行われない。
  4. 論理積(AND)において左辺が真である場合、全体の真偽が確定するため右辺の評価は行われない。
  5. 短絡評価が行われた場合でも、右辺に含まれる関数呼び出しの副作用は式の真偽に関わらず発生する。
正解と解説を見る

正解: 論理積(AND)において左辺が偽である場合、全体の真偽が確定するため右辺の評価は行われない。

正解は「論理積(AND)において左辺が偽である場合、全体の真偽が確定するため右辺の評価は行われない。」です。短絡評価では、左辺を評価した時点で式全体の結果が一意に定まる場合、右辺の評価をスキップします。AND演算では一方が偽なら全体が偽となるため、左辺が偽であれば右辺は評価されません。「論理和(OR)において左辺が偽である場合、全体の真偽が確定するため右辺の評価は行われない。」は誤りで、ORでスキップされるのは左辺が真の場合です。「論理積(AND)において左辺が真である場合、全体の真偽が確定するため右辺の評価は行われない。」も誤りで、左辺が真なら右辺の結果によって全体が決まるため右辺も評価されます。「論理式の評価順序を最適化するため、コンパイラが常に右辺から優先して評価を行う。」は誤りで、左から右へ順に評価されます。「短絡評価が行われた場合でも、右辺に含まれる関数呼び出しの副作用は式の真偽に関わらず発生する。」は誤りで、右辺の評価自体が行われないため副作用も発生しません。

基本情報技術者試験の重要用語

ホワイトボックステスト
プログラムの内部構造や制御の導線に着目し、ソースコードが設計通りに動作するかを確認するテスト手法です。条件分岐やループ処理などが正しく網羅されているかを検証します。主な網羅性の指標として、命令網羅や判定条件網羅などがあります。内部のロジックを詳細に追うため、主に開発者自身が行う単体テストの段階で実施されます。
システム監査
情報システムのリスクに対するコントロールが適切に整備・運用されているかを、独立した第三者が客観的に点検・評価することです。組織の目標達成に寄与し、不備があれば改善勧告を行います。試験では、監査人の「独立性」や「客観性」が重要視され、監査計画の策定から報告、フォローアップまでの一連の流れが頻出します。
OSI参照モデル
国際標準化機構(ISO)によって策定された、ネットワーク通信の機能を7つの階層に分割してモデル化したものです。物理層からアプリケーション層まで、各層が特定の役割を担うことで、異なるメーカーの機器間でも通信が可能になります。試験では、各階層の名称と役割、および代表的なプロトコルの対応関係を把握しておくことが非常に重要です。
ウォーターフォールモデル
開発工程を要件定義、設計、開発、テストといった順序で分割し、前の工程が完了してから次の工程へ進む開発手法です。進捗管理が容易で品質を確保しやすい一方、工程の差し戻しが発生すると多大なコストがかかる特徴があります。要件が明確な大規模プロジェクトに向いており、基本情報技術者試験では最も基本的な開発モデルとして頻出します。

用語をもっと見る →

基本情報技術者試験の問題をアプリで解く

全3,184問から毎回10問を出題。解説・AIへの質問・間違えた問題の復習で、無料で対策できます。