class Some {
  public static void main(String args[]) {
    for(int one = 77; one ==  0; --one) {
      if(one == 77) {
        System.out.println("Original integer:" + one);
      }
      else {
        System.out.println("Integer: " + one);
      }
    }
  }
}

Jestem zdezorientowany, dlaczego kod nie jest w stanie wydrukować wartości. Byłbym wdzięczny, że ktoś powie mi, jak mógłbym pomyślnie pracować pętlę. Pomoc jest doceniana, ponieważ jest to moja pierwsza próba Java. Dzięki.

-1
Flamentix 5 czerwiec 2018, 07:03

4 odpowiedzi

Najlepsza odpowiedź

Warunek testowania pętli dla jest fałszywy, aby rozpocząć (one == 0). Powinieneś mieć oznaczał one >= 0 lub one > 0 jako stan testowania pętli do pętli.

6
user7 5 czerwiec 2018, 04:05

Twoja pętla nie działa, ponieważ one nie jest na początku. Pętla działa tak długo, jak warunek jest prawdziwy.

Twój stan powinien być zamiast tego one >= 0 lub jeśli nie chcesz, aby pętla uruchomić dla jednego == 0 sprawi, że one > 0.

3
Henry 5 czerwiec 2018, 09:03

Zmień kod taki, że program wchodzi co najmniej raz wewnątrz dla pętli . Ponieważ zainicjowałeś I = 77, gdy sprawdzane jest warunek One == 0, zostanie znaleziony fałszywy. Dlatego program nie wejdzie do pętli w poszukiwaniu pętli, a zatem nic nie zostanie wydrukowane.

class Some 
{
    public static void main(String args[]) 
    {
        for(int one = 77; one>=0; --one) 
        {
            if(one == 77) 
            {
                System.out.println("Original integer:" + one);
            }
            else 
            {
                System.out.println("Integer: " + one);
            }
        }
    }
}
1
Bibin Raj B S 5 czerwiec 2018, 04:11

one == 0 nigdy nie jest prawdziwa pętla

Chcesz zrobić one > 0

W twojej pętli jako:

for(int one = 77; one >  0; --one) {
0
Akash Gupta 5 czerwiec 2018, 04:06