此代码必须输入5个整数,然后不使用数组按升序和降序显示它们.但这只给了我最大的数字.没有数组怎么办?
This code has to enter 5 integers and then display them in ascending and descending orders without using arrays. But it gives me only the biggest number. How can i do it without arrays??
package assignment; import javax.swing.JOptionPane; public class q1 { public static void main(String[] args) { String a = JOptionPane.showInputDialog(null, "Please Enter a number", "Input", JOptionPane.QUESTION_MESSAGE); int number1 = Integer.parseInt(a); String b = JOptionPane.showInputDialog(null, "Please Enter a number", "Input", JOptionPane.QUESTION_MESSAGE); int number2 = Integer.parseInt(b); String c = JOptionPane.showInputDialog(null, "Please Enter a number", "Input", JOptionPane.QUESTION_MESSAGE); int number3 = Integer.parseInt(c); String d = JOptionPane.showInputDialog(null, "Please Enter a number", "Input", JOptionPane.QUESTION_MESSAGE); int number4 = Integer.parseInt(d); String e = JOptionPane.showInputDialog(null, "Please Enter a number", "Input", JOptionPane.QUESTION_MESSAGE); int number5 = Integer.parseInt(e); if (number1 > number2 && number1 > number3 && number1 > number4 && number1 > number5) { System.out.print(number1 + ","); } else if (number2 > number1 && number2 > number3 && number2 > number4 && number2 > number5) { System.out.print(number2 + ","); } else if (number3 > number1 && number3 > number2 && number3 > number4 && number3 > number5) { System.out.print(number3 + ","); } else if (number4 > number1 && number4 > number2 && number4 > number3 && number4 > number5) { System.out.print(number4 + ","); } else if (number5 > number1 && number5 > number2 && number5 > number3 && number5 > number4) { System.out.print(number5 + ","); } } }推荐答案
奇怪的是,在数组和列表之外的排序方面,我确实找不到很多东西,所以我会为您提供帮助.
Oddly I couldn't really find much on sorting outside of arrays and lists so I will assist you.
代码:
int temp; for (int count = 0; count < 4; count++) { if ( number2 < number1) { temp = number1; number1 = number2; number2 = temp; } if ( number3 < number2) { temp = number2; number2 = number3; number3 = temp; } if ( number4 < number3) { temp = number3; number3 = number4; number4 = temp; } if ( number5 < number4) { temp = number4; number4 = number5; number5 = temp; } } System.out.println( number1 + " " + number2 + " " + number3 + " " + number4 + " " + number5); System.out.println( number5 + " " + number4 + " " + number3 + " " + number2 + " " + number1);学习一些算法及其工作原理后,排序将变得更加容易.在那之前,我希望这会有所帮助.
Sorting will get easier as you learn some of the algorithms and how they work. Until then, I hope this helps.
基本思想是检查每对并交换值.您需要多次执行此操作,以使最后一个值到达值列表的开头.
The basic idea is to check each pair and swap the values. You will need to do this multiple times in order to get the last value to the beginning of your list of values.
更多推荐
在Java中不使用数组的情况下进行升序排序
发布评论