HOME»基本情報技術者試験掲示板»平成30年秋期午後問13
投稿する

平成30年秋期午後問13 [3803]

 あああさん(No.1) 
https://www.fe-siken.com/kakomon/30_aki/pm13.html
設問eの外側にあるループについてなんですが、iの初期値が2なのはなぜですか?
2だったらend_time[1]の値はずっと変わらないと思うんですけど。
お願いします。
2021.11.08 12:38
KanaSatoさん(No.2) 
>■i:2,i≦B1,1
>┃▲□□e□□
>┃┃・min_time ← end_time[i]
>┃┃・min_no ← i
>┃▼
>■

上記処理は、〔マクロ:queue_simulation の説明〕(3)①の処理に相当します。
min_time よりも早い end_time[i] が見つかるということは、i番窓口は来ていた顧客をさばき、現在フリーということです。

ところで、上記ループの前で、
>・min_no ← 1
>・min_time ← end_time[i]
がされているので、まず、2番窓口と1番窓口でどちらが先に顧客を捌くかを見ます。

2番窓口が長引いていて、捌けなければ min_time, no の更新はされません。以降、3、4……と比べていきます。

結局、どこの窓口も埋まっていれば、min_time, no の更新は一度もされることなく上記ループを終えるのですが、その時に入っている値はどうなるでしょうか。
そうです、min_no は1になり、選択肢gの「end_time[min_no] ← 相対(A2,work_line,6)」の処理によって、end_time[1]が書き換えられるのです。

つまり、end_time[1]の値が書き変わらないということはありません。
2021.11.08 14:01
 あああさん(No.3) 
返答」ありがとうございます。
とてもわかりやすかったです
2021.11.09 13:02
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop