HOME»基本情報技術者試験掲示板»平成30年秋期午後問8  設問1(b)
投稿する

平成30年秋期午後問8  設問1(b) [4579]

 シダさん(No.1) 
https://www.fe-siken.com/kakomon/30_aki/pm08.html
設問1(b)について、
解説の通り、priHigh = 3, priLow = 2 のようにpriHighが1以上のケースを考えると、
一見、選択肢ア、イ、エの中ならどれも条件を満たしているように見えて、
なんでエだけが正解なの!?と、同じ悩みを持つ人も居る(居て欲しい)と思うので
自分なりにスッキリした解法をメモとして残します。

代入する数値についてですが、正の整数だけにとらわれていたので混乱していました。
priHigh = 0, priLow = -1 のようにpriHighが0以下のケースを考えるとスッキリしました。

ア.【priHigh以上】について
nestの最小値は0となる為、この場合priLow + nestをしてもpriHighを上回ることができず、
「括弧外の乗除算  priHigh」と「括弧内の加減算  priLow+nest」の優先順位が逆となってしまいます。

イ.【priHigh+1以上】について
nestの最小値が1となる為、この場合priLow + nestをしても priHighと同値となり、
「括弧外の乗除算  priHigh」と「括弧内の加減算  priLow+nest」の優先順位が同一となってしまいます。


その為、エのみが正解ってことになるんですね。
解説見ても全然納得出来て無かったので、1時間近く頭をひねってました。
固定観念って怖いですね~
2022.11.08 13:18
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop