好吧,我知道有几个线程有与此类似的问题,但我似乎无法在它们上找到我的问题的答案。其他人都在做与我相同的事情,但他们的代码有效:
这是所需的输出:
How many numbers do you want to enter?
4
Enter a number:5
Enter a number:11
Enter a number:-2
Enter a number:3
Highest number is: 11
Lowest number is: -2
这是我的代码:
public static void smallestLargest(){
int highest=Integer.MIN_VALUE;
int lowest=Integer.MAX_VALUE;
int num=0;
Scanner sL = new Scanner(System.in);
System.out.println("How many numbers do you want to enter?");
int nums = sL.nextInt();
for(int i=0; i<nums; i++){
System.out.print("Enter a number:");
num = sL.nextInt();
}
if (num > highest){
num = highest;
}
if(num < lowest){
num = lowest;
}
System.out.println("Highest number is: " + highest);
System.out.println("Lowest number is: " + lowest);
}
这是我得到的输出:
How many numbers do you want to enter?
4
Enter a number:5
Enter a number:11
Enter a number:-2
Enter a number:3
Highest number is: -2147483648
Lowest number is: 2147483647
我在 teamviewer 上的 friend 试图提供帮助,因为他在这方面比我更好,但我们俩都被难住了。感谢您的帮助。
最佳答案
你应该做highest = num
而不是num =最高
最低的情况也是如此。
两个 if
都应该位于 for
循环内(必须对每个输入的数字执行这些操作)
关于java - 最小和最大数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42591465/