28秋 午後問13 最後の設問の解答
ははさん
(No.1)
エと解答し、カが答えだったのですが、この違いがいまいち理解できません、、-1するとずれてしまうということですか?汗
2021.01.08 16:59
こたろうさん
(No.2)
類似の質問と回答が既にあるのでそちらを参照してください。
https://www.fe-siken.com/bbs/2478.html
ポイントはNumWork表すものが状態IDの個数でなく、状態IDの遷移の回数であることでしょうか。
図3を都合よく捉えて、開始状態IDを3,終了状態IDを13,『状態遷移列を13→11→6→4→3とたどる』ばあいを考えます。遷移する回数は4回であり、この回数がループ条件をdとするループの回数に対応するので、dのループ終了時点でNumWorkは4です。このNumWorkをもとにfのループを考えます。fのループでしたいことは図3のA列に状態ID13,11,6,4,3を順に詰めていくことですので、fのループは5回(NumWork + 1回)行われることになります。NumWorkを減らしていく形でのループを想定しているよう読み取れるので、選択肢カの条件を元にループを一回ずつ丁寧に追っていきます。
1.NumWork=4, 状態ID13を詰める
2.NumWork=3, 状態ID11を詰める
3.NumWork=2, 状態ID6を詰める
4.NumWork=1, 状態ID4を詰める
5.NumWork=0, 状態ID3を詰める
次にはNumWork<0になるのでループは終了します。fの条件をNumWork-1にすると、NumWork=4-1=3からループが始まり、4回しかループしないことがご理解いただけるでしょうか。
https://www.fe-siken.com/bbs/2478.html
ポイントはNumWork表すものが状態IDの個数でなく、状態IDの遷移の回数であることでしょうか。
図3を都合よく捉えて、開始状態IDを3,終了状態IDを13,『状態遷移列を13→11→6→4→3とたどる』ばあいを考えます。遷移する回数は4回であり、この回数がループ条件をdとするループの回数に対応するので、dのループ終了時点でNumWorkは4です。このNumWorkをもとにfのループを考えます。fのループでしたいことは図3のA列に状態ID13,11,6,4,3を順に詰めていくことですので、fのループは5回(NumWork + 1回)行われることになります。NumWorkを減らしていく形でのループを想定しているよう読み取れるので、選択肢カの条件を元にループを一回ずつ丁寧に追っていきます。
1.NumWork=4, 状態ID13を詰める
2.NumWork=3, 状態ID11を詰める
3.NumWork=2, 状態ID6を詰める
4.NumWork=1, 状態ID4を詰める
5.NumWork=0, 状態ID3を詰める
次にはNumWork<0になるのでループは終了します。fの条件をNumWork-1にすると、NumWork=4-1=3からループが始まり、4回しかループしないことがご理解いただけるでしょうか。
2021.01.08 18:05
こたろうさん
(No.3)
訂正
1.NumWork=4, 状態ID13を詰める
~
5.NumWork=0, 状態ID3を詰める
のNumWorkはfのループのカウント変数Iの間違いでした。失礼いたしました
1.NumWork=4, 状態ID13を詰める
~
5.NumWork=0, 状態ID3を詰める
のNumWorkはfのループのカウント変数Iの間違いでした。失礼いたしました
2021.01.08 18:29
広告
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
広告