不用數組對四個數字進行排序

import java.util.Scanner;

/**
 * 不用數組對四個數字進行排序
 * 
 * @author xz
 * 有更好的方案請聯繫[email protected]
 * 謝謝!!!
 */
public class Sort {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		System.out.println("請輸入四個數:");
		double a = in.nextDouble();
		double b = in.nextDouble();
		double c = in.nextDouble();
		double d = in.nextDouble();
		System.out.println("比較結果是:" + new Sort().sort(a, b, c, d));
	}

	/*
	 * 排序
	 */
	public String sort(double a, double b, double c, double d) {
		/*
		 * 由於此處不能用數組交換成員變量做法也不好只能這樣了
		 */
		if (a < b) {
			a = a + b;
			b = a - b;
			a = a - b;
		}
		if (c < d) {
			c = c + d;
			d = c - d;
			c = c - d;
		}
		if (a < c) {
			a = a + c;
			c = a - c;
			a = a - c;
		}
		if (b < d) {
			b = b + d;
			d = b - d;
			b = b - d;
		}
		if (b < c) {
			b = b + c;
			c = b - c;
			b = b - c;
		}
		return " " + a + "," + b + "," + c + "," + d;

	}
}
謝謝大神們給出個優化!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章