科目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
