【Java】演習問題3−16【新・明解Java入門】

演習3-16

三つの整数値を読み込んで、昇順(小さい順)にソートするプログラムを作成

 解答

public class q3_16 {
    public static void main(String[] args){
        System.out.println("三つの整数を入力してください");
        int x = new java.util.Scanner(System.in).nextInt();
        int y = new java.util.Scanner(System.in).nextInt();    
        int z = new java.util.Scanner(System.in).nextInt();
        System.out.println("変数x:" + x);
        System.out.println("変数y:" + y);
        System.out.println("変数z:" + z);
        int max=0;
        int min=0;
        int mid=0;

        if(x > y){
            max = x;
        }else{
            max = y;
        }
        if(max < z){
            max = z;
        }
        if(x < y){
            min = x;
        }else{
            min = y;
        }
        if(min > z){
            min = z;
        }
        if(max == x && min == y){
            mid = z;
        }else if(max == x && min == z){
            mid = y;
        }else if(max == y && min == z){
            mid = x;
        }else if(max == y && min == x){
            mid = z;
        }else if(max == z && min == x){
            mid = y;
        }else if(max == z && min == y){
            mid = x;
        }   
        
        System.out.println("昇順(小さい順)となるように並び替えます");
        System.out.println(min);
        System.out.println(mid);
        System.out.println(max);
    }
}