Javaプログラミング基礎------プロジェクト実戦(シーズンオフ航空券割引を実現)

17740 ワード

Javaプログラミング基礎------プロジェクト実戦(シーズンオフ航空券割引を実現)
文書ディレクトリ
  • Javaプログラム設計基礎------プロジェクト実戦(シーズンオフ航空券割引を実現)
  • 1.プロジェクトケース
  • 2.プロジェクト実現
  • 2.1 if-else文を使用して、シーズンオフの航空券割引
  • を実現
  • 2.2 switch文を使用して、シーズンオフの航空券割引
  • を実現
    1.プロジェクトケース
    ある航空会社はより多くの顧客を引き付けるために優遇活動をした.元の飛行機の運賃は60000元で、活動時、4~11月の繁忙期、ファーストクラスは9割引、エコノミークラスは8割引だった.1~3月、12月のオフシーズン、ファーストクラスは5割引して、エコノミークラスは4割引して、航空券の価格を求めます.
    2.プロジェクトの実現
    2.1 if-else文でシーズンオフ航空券割引を実現
    Javaのネストif文を使用して、シーズンオフの航空券割引から航空券の価格を求め、Javaプログラムの実装コードを作成します.
    import java.util.Scanner;
    public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("        :");
            int month = sc.nextInt();
            System.out.println("          ?  1    ,  2    ");
            int kind = sc.nextInt();
            double result = 60000; //     
            //        
            if (month <= 11 && month >= 4) {
                if (kind == 1) { //      
                    result = result * 0.9;
                } else if (kind == 2) { //      
                    result = result * 0.8;
                } else {
                    System.out.println("      ,     !");
                }
            }
            //        
            else if ((month >= 1 && month <= 3) || month == 12) {
                if (kind == 1) { //      
                    result = result * 0.5;
                } else if (kind == 2) { //      
                    result = result * 0.4;
                } else {
                    System.out.println("      ,     !");
                }
            } else {
                System.out.println("      ,     !");
            }
            System.out.println("         :" + result);
        }
    }
    

    上記のコードは、ユーザーが入力した月をmonth変数に保存し、航空券の種類をkind変数に保存します.次に変数monthとkindの範囲を判断する.変数monthが4~11の場合、kindが1の場合はresult=result*0.9、2の場合はresult=result*0.8を実行します.変数monthは1~3,12,kindは1でresult=result*0.5,2でresult=result*0.4を実行する.ユーザ入力に誤りがある場合は,誤りに応じて異なるヒントを与える.
    繁忙期のエコノミークラスの移動の出力結果は以下の通りです.
    612    
    248000.0
    

    オフシーズンのファーストクラスの出力結果は以下の通りです.
    212    
    130000.0
    

    2.2 switch文によるシーズンオフ航空券割引
    上はネストifで実現された淡いシーズンの航空券割引で、下はswitchで実現され、コードは以下の通りです.
    import java.util.Scanner;
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("        :");
        int month = sc.nextInt();
        System.out.println("          ?  1    ,  2    ");
        int kind = sc.nextInt();
        double result = 60000; //     
        switch (month) {
        //        
        case 4:
        case 5:
        case 6:
        case 7:
        case 8:
        case 9:
        case 10:
        case 11:
            switch (kind) {
            case 1: //      
                result = result * 0.9;
                break;
            case 2:
                result = result * 0.8;
                break;
            default:
                System.out.println("      ,     !");
                break;
            }
            break;
        case 1:
        case 2:
        case 3:
        case 12:
            switch (kind) {
            case 1: //      
                result = result * 0.5;
                break;
            case 2:
                result = result * 0.4;
                break;
            default:
                System.out.println("      ,     !");
                break;
            }
            break;
        default:
            System.out.println("      ,     !");
            break;
        }
        System.out.println("         :" + result);
    }
    

    実行結果は次のとおりです.
    612    
    248000.0
    

    オフシーズンのファーストクラスの出力結果は以下の通りです.
    212    
    130000.0