已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
2天前关闭。
Improve this question
我必须构建一个程序,要求用户输入三个非负数(整数),然后以升序/递增顺序向用户显示这些数字。我必须使用嵌套的if-else语句,并且不能使用sort()方法或数组(这是一个适合初学者的项目)。
这是我当前的代码(我做错了一些事情),我不知道如何将我的int变量'n1'赋值为low,如果“if”语句是true/正确的:
//int vars for each number (ie n1) & ints for low, med, high
int n1;
int n2;
int n3;
int low;
int med;
int high;
//Create Scanner object
Scanner keyboard = new Scanner(System.in);
//Create input message & use Scanner object collect 3 numbers to be sorted
System.out.println("This program will collect 3 non-negative numbers");
//First number input
System.out.print("Enter the first number: ");
n1 = keyboard.nextInt();
//Second number input
System.out.print("Enter the second number: ");
n2 = keyboard.nextInt();
//Third number input
System.out.print("Enter the third number: ");
n3 = keyboard.nextInt();
////Look for when n1 is smallest section
if (n1 <= n2 && n1 <= n3) {
n1 = low;
if (n2 <= n3 ) {
n2 = med;
n3 = high;
}
else
n2 = high;
n3 = med;
}
3条答案
按热度按时间35g0bw711#
你的需求陈述是正确的
我不知道如何将我的int变量'n1'赋值为low,如果“if”语句是true/正确的:
但是你写的正好相反。例如,将'low'赋值给'n1'。
(尽管'low'在这一点上没有定义的值,编译器可能会抱怨)。
要将“n1”分配给“低”写入
分配从右到左:低〈- n1。
其他作业当然也是一样。我想可能还有逻辑问题,但一步一步来。如果你在完成作业后有困难,可以再提出问题。
oxf4rvwz2#
问题是你的算法。
首先看n1是否小于n2,如果是,n3和n1中的较小者最小,如果不是,n3和n2中的较小者最小。
比较剩余的两个数字以确定顺序。
xbp102n03#