Не уверены, что использовать для контролируемого цикла while - Java

В настоящее время я новичок в программировании на Java.

У меня небольшие проблемы с циклом while, который имеет значение часового. Все работает, пока я не добавлю цикл while, однако это необходимо, чтобы я мог выйти, когда введено значение "999".

Я также не уверен, что добавить для значений "если".

Любая помощь будет оценена!

import java.util.Scanner;

public class SumAverage {
static Scanner keyboard = new Scanner(System.in);

public static void main(String[] args) {

    System.out.printf("Please Enter the first number%n");
    int num1 = keyboard.nextInt();

    System.out.printf("Please enter the second number%n");
    int num2 = keyboard.nextInt();

    System.out.printf("Please enter the third number%n");
    int num3 = keyboard.nextInt();

    int sum = num1 + num2 + num3;               //calculates sum
    int average = (num1 + num2 + num3) / 3;     //calculates average

    while (num1 != ) {
        if (sum > 1)
            System.out.printf("Sum: %s %nAverage: %s", sum, average);

        else if (sum < 1)
            System.out.printf("Sum: %s %nAverage: %.2f", sum, average);
    }
  }
}

2 ответа

Решение

Вы можете сделать это следующим образом:

import java.util.Scanner;

public class SumAverage {
static Scanner keyboard = new Scanner(System.in);

public static void main(String[] args) {

 int input,sum,avg,count;
 do{
    System.out.printf("Please enter number" + (count+1) + "%n");
    input = keyboard.nextInt()
    sum += input;
    count += 1;
    avg = sum/count;
 }while(input != 999);
 //Do whatever is to be done once sentinel is input.
}

Вы можете изменить цикл while следующим образом

while(num1 !=999 || num2 !=999 || num3 !=999)
|| используется как оператор ИЛИ Поэтому, когда любое входное значение равно 999, цикл не будет выполняться.

Другие вопросы по тегам