@Dmit75
Учусь java

Почему не работает цикл while в java?

Помогите, пожалуйста, с циклом.
Только начал учить...
Читал, гуглил всё равно не понимаю.
Говорит "java: not a statement"

public static void main(String[] args) {
	
        int beerNum = 99;
        String word = "бутылок";

        while (beerNum > 0) {
            if (beerNum == 1) {
                word = "бутылка";
                beerNum = beerNum - 1;
            }
                System.out.println(beerNum + " " + word + " пива на стене");
                System.out.println(beerNum + " " + word + " пива.");
                System.out.println("возьми одну");
                System.out.println("пусти по кругу.");
                else (beerNum < 1) {
                System.out.println("Нет бутылок пива на стене.");
            }
            }

        }
  • Вопрос задан
  • 653 просмотра
Пригласить эксперта
Ответы на вопрос 2
azerphoenix
@azerphoenix Куратор тега Java
Java Software Engineer
Такая конструкция неверна.
else (beerNum < 1)

Либо else { ... }
Либо else if (условие) {...}
Ответ написан
@mr_molyar
Java back-end developer
У вас бесконечный цикл, кол-во бутылок не будет уменьшаться так как, их уменьшение происходит, только, когда оно равно 1, хотя изначально их 99. Плюс выше сказанные замечания тоже верны.

public class Main {
    public static void main(String[] args) {
        int beerNum = 99;
        String word = "бутылок";

        while (beerNum > 0) {
            if (beerNum == 1) {
                word = "бутылка";
            }
            System.out.println(beerNum + " " + word + " пива на стене");
            System.out.println(beerNum + " " + word + " пива.");
            System.out.println("возьми одну");
            System.out.println("пусти по кругу.");
            beerNum = beerNum - 1;
        }
        System.out.println("Нет бутылок пива на стене.");
    }
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы