• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wczytywanie w pętli

Object Storage Arubacloud
+1 głos
534 wizyt
pytanie zadane 13 kwietnia 2017 w Java przez Raba_Ababa Początkujący (390 p.)

Witam, może mi ktoś objaśnić czemu to nie działa? Chcę po prostu wczytywać w pętli while. Z góry dzięki za odpowiedź.

package com.company;
import java.util.Scanner;
import java.util.Random;

public class Main {

    public static void main(String[] args) {
        Random generator = new Random();
        int number;
        number = generator.nextInt( 100);

        System.out.print("Hello Words!\n");
        int x,x1;
        Scanner odczyt = new Scanner(System.in);
        System.out.print("Podaj liczbe:");
        x = odczyt.nextInt();
        while(x==number) {
            x = odczyt.nextInt();
            if (x < number) {
                System.out.print("Za mala!\n");
                System.out.print("Podaj liczbe:");
            }
            if (x > number) {
                System.out.print("Za duza!\n");
                System.out.print("Podaj liczbe:");
            }
            if (x == number) {
                System.out.print("Wygrales!");
            }
        }
    }
}

 

1 odpowiedź

+1 głos
odpowiedź 13 kwietnia 2017 przez Javowiec Pasjonat (21,560 p.)
wybrane 3 stycznia 2018 przez Raba_Ababa
 
Najlepsza

Powinno być:

while(x!=number) {
     // Twój kod
}

Pętla while wykonuje się, dopóki warunek w nawiasach jest prawdziwy. Więc dopóki nie trafisz liczby, warunek jest prawdziwy i pętla while trwa. Gdy trafisz liczbę, warunek jest fałszywy i pętla kończy się.

W swoim kodzie miałeś sytuację odwrotną, czyli gdy nie trafiłeś liczby za pierwszym razem, pętla się kończyła. Gdybyś jakimś cudem ją trafił, pętla zrobiłaby kolejną iterację.

2
komentarz 13 kwietnia 2017 przez Raba_Ababa Początkujący (390 p.)
Ech, no tak... To jest typowy przykład pisania kodu z automatu, bez zastanowienia. :) Dzięki wielkie.

Podobne pytania

0 głosów
0 odpowiedzi 626 wizyt
pytanie zadane 23 kwietnia 2017 w Inne języki przez buhaha Nowicjusz (120 p.)
0 głosów
1 odpowiedź 311 wizyt
pytanie zadane 15 marca 2021 w Java przez Beginner555 Obywatel (1,760 p.)
0 głosów
1 odpowiedź 232 wizyt
pytanie zadane 4 października 2020 w Java przez sobussss Początkujący (350 p.)

92,572 zapytań

141,423 odpowiedzi

319,645 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...