平成31年春期  問11Javaについて

午前試験免除制度対応!基本情報技術者試験のeラーニング【独習ゼミ】
ぱせりさん  
(No.1)
問11 迷路と迷路上を移動する駒についての質問です。
プログラム5について、「駒を操作し、履歴リストを表示する。」とありました。
System.out.println(history);で履歴リストを表示していることは分かるのですが、駒を操作する処理が記述されていないように感じました。
piece.turnLeft()で左向いて、piece.turnRight()で右向いてるだけで、方向変えてるだけだと思いました。

while(!piece.~)で条件を満たさなくなったときに()の中身の処理を行っているのかな?と無理矢理理解していますが、この認識で合っているのでしょうか。
2023.04.15 16:11
miyatanさん 
(No.2)
while(!ナントカ)はナントカがfalseである間、{}内のモノを繰り返し行います。
while(!piece.tryStepForward)に来た段階で
tryStepForward が試みられ、「隣接する前方の升が通路でなければ,前進せずにfalseを返」されるので{piece.turnRight()}を繰り返す。
「隣接する前方の升が通路なら1升前進し,前進した方角を履歴リストに追加してからtrueを返」されるのでwhileから抜ける。
かなと思います。
2023.04.15 18:40
ぱせりさん  
(No.3)
miyatanさん
非常に分かりやすい説明ありがとうございます!
頭を悩ませていたのですが、今の解説でスッキリしました!
2023.04.15 19:11

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。

その他のスレッド


Pagetop