如果没有输入数据,如何实现取消语句
How to implement a cancel statement if no data entered
我仍在学习编程,确实需要一些帮助,我需要制作一个具有很多功能的程序并且大部分都已完成,但我在创建特定行时遇到困难。我正在使用 while 循环让用户输入数字来计算最大、最小以及随机生成的数字的总和。我需要编写一种方法,如果用户在输入任何其他数据之前输入退出语句 -99,它会说 "You have entered no numbers." 并退出程序。任何帮助都会很棒,下面是我的程序代码。
public class LargestSmallest
{
public static void main(String [] args)
{
//identifier declarations
int number;
int numberend = -99;
int largest = Integer.MIN_VALUE;
int smallest = Integer.MAX_VALUE;
int number1;
int sum1;
int sum2;
//create a Scanner object to read from the keyboard & input
Scanner input = new Scanner(System.in);
//create a random object
Random randomNumbers = new Random();
//get one random number
number1 = randomNumbers.nextInt(9);
//display prompts and get input
System.out.println("Enter an integer, or -99 to quit:");
//loop for number input
while ((number = input.nextInt()) != numberend) {
System.out.println("Enter an integer, or -99 to quit:");
//largest & smallest number sorting
if (number > largest) {
largest = number;
}
if (number < smallest) {
smallest = number;
}
}
//calculate final sums
sum1 = number1 + largest;
sum2 = number1 + smallest;
//final statements
System.out.println("Largest:" + largest);
System.out.println("Smallest:" + smallest);
System.out.println("Random:" + number1);
System.out.println("Largest + Random:" + sum1);
System.out.println("Smallest + Random:" + sum2);
}
}
如果您只是想在没有用户输入的情况下以适当的消息结束程序,您可以这样做:
while ((number = input.nextInt()) != numberend) {
System.out.println("Enter an integer, or -99 to quit:");
//largest & smallest number sorting
if (number > largest) {
largest = number;
}
if (number < smallest) {
smallest = number;
}
}
if (largest > Integer.MIN_VALUE) {
//calculate final sums
sum1 = number1 + largest;
sum2 = number1 + smallest;
//final statements
System.out.println("Largest:" + largest);
System.out.println("Smallest:" + smallest);
System.out.println("Random:" + number1);
System.out.println("Largest + Random:" + sum1);
System.out.println("Smallest + Random:" + sum2);
} else {
System.out.println("You have entered no numbers");
}
如果您想忽略 -99 并留在循环中:
while ((number = input.nextInt()) != numberend || largest == Integer.MIN_VALUE) {
while (number == numberend) {
System.out.println("You have entered no numbers, you can't quit");
number = input.nextInt();
}
System.out.println("Enter an integer, or -99 to quit:");
//largest & smallest number sorting
if (number > largest) {
largest = number;
}
if (number < smallest) {
smallest = number;
}
}
我仍在学习编程,确实需要一些帮助,我需要制作一个具有很多功能的程序并且大部分都已完成,但我在创建特定行时遇到困难。我正在使用 while 循环让用户输入数字来计算最大、最小以及随机生成的数字的总和。我需要编写一种方法,如果用户在输入任何其他数据之前输入退出语句 -99,它会说 "You have entered no numbers." 并退出程序。任何帮助都会很棒,下面是我的程序代码。
public class LargestSmallest
{
public static void main(String [] args)
{
//identifier declarations
int number;
int numberend = -99;
int largest = Integer.MIN_VALUE;
int smallest = Integer.MAX_VALUE;
int number1;
int sum1;
int sum2;
//create a Scanner object to read from the keyboard & input
Scanner input = new Scanner(System.in);
//create a random object
Random randomNumbers = new Random();
//get one random number
number1 = randomNumbers.nextInt(9);
//display prompts and get input
System.out.println("Enter an integer, or -99 to quit:");
//loop for number input
while ((number = input.nextInt()) != numberend) {
System.out.println("Enter an integer, or -99 to quit:");
//largest & smallest number sorting
if (number > largest) {
largest = number;
}
if (number < smallest) {
smallest = number;
}
}
//calculate final sums
sum1 = number1 + largest;
sum2 = number1 + smallest;
//final statements
System.out.println("Largest:" + largest);
System.out.println("Smallest:" + smallest);
System.out.println("Random:" + number1);
System.out.println("Largest + Random:" + sum1);
System.out.println("Smallest + Random:" + sum2);
}
}
如果您只是想在没有用户输入的情况下以适当的消息结束程序,您可以这样做:
while ((number = input.nextInt()) != numberend) {
System.out.println("Enter an integer, or -99 to quit:");
//largest & smallest number sorting
if (number > largest) {
largest = number;
}
if (number < smallest) {
smallest = number;
}
}
if (largest > Integer.MIN_VALUE) {
//calculate final sums
sum1 = number1 + largest;
sum2 = number1 + smallest;
//final statements
System.out.println("Largest:" + largest);
System.out.println("Smallest:" + smallest);
System.out.println("Random:" + number1);
System.out.println("Largest + Random:" + sum1);
System.out.println("Smallest + Random:" + sum2);
} else {
System.out.println("You have entered no numbers");
}
如果您想忽略 -99 并留在循环中:
while ((number = input.nextInt()) != numberend || largest == Integer.MIN_VALUE) {
while (number == numberend) {
System.out.println("You have entered no numbers, you can't quit");
number = input.nextInt();
}
System.out.println("Enter an integer, or -99 to quit:");
//largest & smallest number sorting
if (number > largest) {
largest = number;
}
if (number < smallest) {
smallest = number;
}
}