ITの基礎知識|ITパスポート・基本情報

【スタック】の記事一覧

科目Bに共通する注意事項(表記ルールなど)については、下記のリンク先を参照してください。

基本情報技術者 令和7年公開問題 科目Bの注意事項


問題

次のプログラム中の【  a  】と【  b  】に入れる正しい答えの組合せを,解答群の中から選べ。ここで,配列の要素番号は1 から始まる。

関数 push はスタックに値を格納し,格納できた場合は true,できなかった場合は false を返す。関数 pop はスタックから値を取り出して返す。スタックが空のときは未定義の値を返す。

[プログラム]

大域: 整数型: stackPos ← 3
大域: 整数型の配列: stack ← {4, 3, 未定義の値, 未定義の値}

○論理型: push(整数型: inputData)
  if (stackPos ≦ stackの要素数)
    stack[ 【 a 】 ] ← inputData
    stackPos ← stackPos + 1
    return true
  else
    return false
  endif

○整数型: pop()
  整数型: popData ← 未定義の値
  if (stackPos > 1)
    stackPos ← 【 b 】
    popData ← stack[stackPos]
    stack[stackPos] ← 未定義の値
  endif
  return popData

選択肢(a と b の組合せ)

    • a:stackPos
    • b:stackPos + 1
    • a:stackPos
    • b:stackPos - 1
    • a:stackPos - 1
    • b:stackPos + 1
    • a:stackPos - 1
    • b:stackPos - 1