Rozbudowanie Menu

0

Oto mój kod gry "Za dużo za mało":

public class ZaDuzoZaMalo {
private int liczbaPodona;
private int iloscLosowan;
private String nick;
private int liczbaMenu;

public int liczbaLosowana() {
    Random random = new Random();
    int liczbaLosowana = random.nextInt(101);
    System.out.println(liczbaLosowana);
    return liczbaLosowana;
}

public void sprawdzenie(int liczbaLosowana) throws IOException {
    Scanner scanner = new Scanner(System.in);

    nick = scanner.nextLine();
    System.out.println("Podaj nick");

    System.out.println("Podaj liczbe");

    while (liczbaPodona != liczbaLosowana) {

        if (liczbaPodona > liczbaLosowana) {
            System.out.println("LIczba jest za duza");
            System.out.println("Podaj jeszcze raz");
            liczbaPodona = scanner.nextInt();

        }

        if (liczbaPodona < liczbaLosowana) {
            System.out.println("Liczba jest za mala");
            System.out.println("Podaj jeszcze raz");
            liczbaPodona = scanner.nextInt();

        }

        if (liczbaPodona == liczbaLosowana) {
            System.out.println("Trafiłes");
            System.out.println("Gratulacja!!!");
        }
        iloscLosowan++;
    }
    System.out.println("Zrobiene cholerstwo po  " + iloscLosowan);
    zapisDoPliku(nick, iloscLosowan);
}

public void zapisDoPliku(String nick, int iloscLosowan) throws IOException {
    PrintWriter zapis = new PrintWriter(new FileWriter("Wyniki", true));
    zapis.println(nick + " " + iloscLosowan);
    System.out.println();
    zapis.close();
}

public void wynikiGraczy() throws FileNotFoundException {

    File file = new File("Wyniki.txt");
    Scanner scanner = new Scanner(file);
    while (scanner.hasNextLine()) {
        System.out.println(scanner.nextLine());
    }

}

public void menuGry() throws IOException {

    Scanner scanner = new Scanner(System.in);
    System.out.println("1 - Gra");
    System.out.println("2 - Wyniki ");
    System.out.println("3 - Poziom Easy");
    System.out.println("4 - Poziom Medium");
    System.out.println("5 - Poziom Hard");
    if (liczbaMenu >= 5) {
        System.out.println("Niepoprawny wybór");
    }
    liczbaMenu = scanner.nextInt();
    switch (liczbaMenu) {
        case 1: {
            sprawdzenie(liczbaLosowana());
            break;
        }
        case 2: {
            wynikiGraczy();
            break;
        }
    }

}

Jak można rozbudować Menu by nie przepisywać "metody sprawdzenie" 3 razy by był inny przedział Random random

PoziomEasy losowanie liczby od 1-10
PoziomMedium losowanie liczby od 1-50
PoziomHard losowanie liczby od 1-100

0

Nie mam pojęcia o co pytasz ale jeśli chodzi Ci o to jak losować liczby z konkretnego przedziału to:

easy: rand.nextInt(10) + 1;
medium: rand.nextInt(50) + 1;
hard: rand.nextInt(100) + 1;

I wtedy powinna być Gra - easy. Gra - medium. Gra - hard

0

dokładnie chodzi mi o to by dokonał wyboru przed samym uruchomiem gry.

    System.out.print("Podaj nick");
    nick = scanner.nextLine();

    System.out.println("Wybierz poziom gry");

    System.out.println("1 - Poziom Easy");
    System.out.println("2 - Poziom Medium");
    System.out.println("3 - Poziom Hard");
    int liczbaPoziomGry = scanner.nextInt();


    if (liczbaPoziomGry >= 3) {
        System.out.println("Nie poprawny wybor");
    }
    switch (liczbaPoziomGry) {
        case 1: {
            sprawdzenie(11);
            System.out.println("Podaj liczbe");
        }
        case 2: {
            sprawdzenie(51);
            System.out.println("Podaj Liczbe");
        }
        case 3: {
            sprawdzenie(101);
            System.out.println("Podaj liczbe");
        }
    }
0

No jak działa to jest ok. Nie rozumiem pytania:)
Z tym zastrzeżeniem że 0 też może się wylosować w Twoim przypadku.

1 użytkowników online, w tym zalogowanych: 0, gości: 1