1. 程式人生 > >ZZULIOJ 1102: 火車票退票費計算(函式專題)

ZZULIOJ 1102: 火車票退票費計算(函式專題)

題目描述

2013年起,火車票退票費比例下調:票面乘車站開車時間前48小時以上的按票價5%計退票費。同時,車票退票費的計算方法不再四捨五入到元為單位,而是以5角為單位:尾數小於0.25元的捨去、不小於0.25元且小於0.75元的計為0.5元、不小於0.75元的進為1元。編寫一個函式,計算退票費,假定退票時間舉例開車時間在48小時以上。函式原型如下: 

double CancelFee(double price); 

本題如果是C/C++程式碼提交,只需要提交CancelFee函式的定義部分,提交其它內容,編譯出錯。 

 

輸入

輸入一個實數,表示火車票票面價格。 

 

輸出

輸出一個實數,表示退票費,結果保留一位小數。 

 

樣例輸入

106

 

樣例輸出

5.5
import java.util.Scanner;

public class Main {


        public static double CancelFee(double price) {

                 double num=price*0.05;

                 int a=(int)num;   //對對退票費強制轉型為int價強制轉型為int

                 double weishu=num-a;

                 if(weishu<0.25)
                         weishu=0;
                 if(weishu>=0.25&&weishu<0.75)
                         weishu=0.5;
                 if(weishu>=0.75)
                         weishu=1;

                 double money=weishu+a;

                 return money;

         }

        public static void main(String[] args)
        {
           Scanner input=new Scanner(System.in);
           int n=input.nextInt();
           System.out.println(Main.CancelFee(n));
        }

}