亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

while循環如何顯示循環運行次數

while循環如何顯示循環運行次數

牧羊人nacy 2022-06-30 19:14:57
只要滿足條件 sumaA > sumaB,我就想運行“while”循環。如何顯示 sumaA 和 sumaB 的迭代次數和當前值?import java.util.*;class Sum {    public static void main(String[] args) {        int sumaA = 1000;        int sumaB = 0;        Random rand = new Random();        int n = rand.nextInt(9);        int g = rand.nextInt(49);{            System.out.println("Random N= "+ n);            sumaA += n;            System.out.println("sumaA: "+sumaA);            System.out.println();            System.out.println("Random N= "+ g);            sumaB += g;            System.out.println("sumaB: "+sumaB);            while (sumaA>sumaB);            }        System.out.println("loop runs numbers");        System.out.println("value sumaA" + sumaA + "value sumaB " + sumaB);        }    }
查看完整描述

4 回答

?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

你必須糾正你的while循環,因為在它的當前狀態下,它不會做任何事情。


這是對您的代碼的更正,它基本上可以工作(我不知道所需的輸出,但看起來不錯):


public static void main(String[] args) {


    int sumaA = 1000;

    int sumaB = 0;


    Random rand = new Random();

    int n = rand.nextInt(9);

    int g = rand.nextInt(49);


    int runCounter = 0;


    while (sumaA > sumaB) {

        runCounter++;

        System.out.println("Loop run number " + runCounter);

        System.out.println("Random N = " + n);


        sumaA += n;

        System.out.println("sumaA: " + sumaA);

        System.out.println();


        System.out.println("Random N= " + g);

        sumaB += g;

        System.out.println("sumaB: " + sumaB);

    }


    System.out.println("loop ran " + runCounter + " times");

    System.out.println("value sumaA" + sumaA + "value sumaB " + sumaB);

}

請看一下循環現在的樣子。每次循環運行要執行一次的所有內容都必須在循環主體內(大括號)。


查看完整回答
反對 回復 2022-06-30
?
四季花海

TA貢獻1811條經驗 獲得超5個贊

  do {  

    int n = rand.nextInt(9);

    int g = rand.nextInt(49);


        System.out.println("Random N= "+ n);


        sumaA += n;

        System.out.println("sumaA: "+sumaA);

        System.out.println();


        System.out.println("Random N= "+ g);

        sumaB += g;

        System.out.println("sumaB: "+sumaB);

        System.out.println("loop runs numbers");

        System.out.println("value sumaA" + sumaA + "value sumaB " + sumaB);

        }  while (sumaA>sumaB);


    }

你好,這是你想做的嗎?


查看完整回答
反對 回復 2022-06-30
?
UYOU

TA貢獻1878條經驗 獲得超4個贊

您必須正確構造您的 while 循環并獲取局部變量 counter 并將其初始化為 0。而 while 迭代在 counter 變量中添加 +1。請考慮以下代碼:


public static void main( String[] args )

   {

      int sumaA = 1000;

      int sumaB = 0;

      int counter = 0;

      Random rand = new Random();

      int n = rand.nextInt( 9 );

      int g = rand.nextInt( 49 );

      while ( sumaA > sumaB )

      {

         System.out.println( "Random N= " + n );


         sumaA += n;

         System.out.println( "sumaA: " + sumaA );

         System.out.println();


         System.out.println( "Random N= " + g );

         sumaB += g;

         System.out.println( "sumaB: " + sumaB );

         counter++;

      }

      System.out.println( "loop runs numbers " + counter );

      System.out.println( "value sumaA " + sumaA + "value sumaB " + sumaB );

   }


查看完整回答
反對 回復 2022-06-30
?
阿波羅的戰車

TA貢獻1862條經驗 獲得超6個贊

while 循環括號內的代碼,直到括號內的條件為假。因此,例如這段代碼:


int i = 0;

loops = 0

while(i < 6){

  loops++;

  System.out.println("loop runs numbers"+loops);

  i+=2;

  System.out.println("i: "+i);

}

輸出:


循環運行數字 1


我:2


循環運行數字 2


我:4


循環運行數字 3


我:6


然后因為 i 不小于 6 而停止。


現在您的代碼的問題是您的 while 括號內沒有任何指令,因此括號內的條件以 true 開始,并且永遠不會變為 false,因為您沒有在循環內更改任何內容。您應該做的是將代碼移動到 while 括號內,如果您希望計算循環運行次數,請添加一個“循環”變量。最終代碼應如下所示:



import java.util.*;


class Sum {

    public static void main(String[] args) {

    int sumaA = 1000;

    int sumaB = 0;

    int loops = 0;


    while (sumaA>sumaB){

      Random rand = new Random();

      int n = rand.nextInt(9);

      int g = rand.nextInt(49);{

      System.out.println("Random N= "+ n);

      sumaA += n;

      System.out.println("sumaA: "+sumaA);

      System.out.println();

      System.out.println("Random N= "+ g);

      sumaB += g;

      System.out.println("sumaB: "+sumaB);

      loops++;

      System.out.println("loop runs numbers"+loops);

      System.out.println("value sumaA" + sumaA + "value sumaB " + sumaB);

    }

  }

}


查看完整回答
反對 回復 2022-06-30
  • 4 回答
  • 0 關注
  • 441 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號