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

[2475] 平成29年春期午後問8

 TKさん(No.1) 
https://www.fe-siken.com/kakomon/29_haru/pm08.html

24行目の「pDist[j] < pDist[i]」とありますが、pDistの中身は初期化された時から変化がないので、
ずっと∞になりませんか?どちらもずっと無限では比較できないのではないでしょうか?
2020.09.15 09:58
アゲハミンミンさん(No.2) 
この投稿は投稿者により削除されました。(2020.09.15 11:24)
2020.09.15 11:24
アゲハミンミンさん(No.3) 
11行目でpDist[sp]に0を設定
1回目のループ↓
13行目でiが0で初期化
16行目でbreak
そして23行目のループに入り、ここではスタート地点(0)とi(0)+1番目の地点のpDistを比較する処理になっています。
確かにpDistの配列は8行目で∞で初期化されていますが、pDist[0]は前述した11行目で0が設定されています。pDist[sp]のspの値が0であるかどうかは、プログラムの引数を見ればわかります。「整数型:sp」とあり、解説に「出発地の地点番号」とあるので、spは0であると考えられます。つまり、11行目ではpDist[0]に0を設定している事になるので、23行目で∞同士を比較するという結果にはなりません。
解釈を間違えていたら申し訳ないのですが、これで質問の答えになっているでしょうか?
2020.09.15 11:25

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop