• ベストアンサー

Javaで疑問があります

Javaで疑問があります これをコンパイルを実行すると、xxyxがでてくるんですけど、3つめのyが4つめのxより先にでてくる理由は問題文の{ }のなかで1番内側にきてるからですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • _kappe_
  • ベストアンサー率68% (1584/2309)
回答No.4

問題のプログラムのwhileループは5行目から10行目を繰り返します。 一つ目のxはwhileループの1周目に出力されます。2周目にxとyを出力します。3周目に最後のxを出力します。 《1周目》 5行目→6行目(ここでxを出力)→7行目→(条件を満たさないので8行目はスキップ)→9行目→10行目 《2周目》 5行目→6行目(ここでxを出力)→7行目→8行目(ここでyを出力)→9行目→10行目 《3周目》 5行目→6行目(ここでxを出力)→7行目→(条件を満たさないので8行目はスキップ)→9行目→10行目 《4周目》 5行目(aの値が条件を満たさなくなったので6~10行目を実行せずにwhileループを抜ける)

その他の回答 (3)

  • _kappe_
  • ベストアンサー率68% (1584/2309)
回答No.3

https://okwave.jp/qa/q9857488.htmlの回答を見返してください。

回答No.2

a==2のとき、Yなのだから、 2のときにy出てますよ。 ちなみ、aは0オリジンですよ。 0 1 2 3 最後に3<3 を満たさないので終了 なので x x y x あと、bは使われてないので無関係ですね。

  • watanabe04
  • ベストアンサー率18% (295/1599)
回答No.1

2つめのxのあとにyを表示しているからです。

関連するQ&A

専門家に質問してみよう