我正在研究一個函數,我正在計算計量單位的數量。對於儀表calcualtions規則是:實現單位轉換
- 上1.6公里AMT最低票價 - 12/-
- 隨後1公里AMT - 7/-
- 25%的額外的旅程票價爲午夜
我寫的功能是:
public static void CalculateAutoFare(int kmIndex) {
double fare = 12.00;
double night = 15.00;
double subseIncre = 1.50;
double nightIncre = 0.25;
int j=0;
for (int i=1; i <= kmIndex; i++) {
if (i == 3 || j == 4) {
fare += 1.00f;
j =0;
}
else {
fare += subseIncre;
j++;
}
fare = Math.round(fare*2f)/2f;
double extra = ((double) fare * nightIncre);
night = fare + extra;
night = Math.round(night*2f)/2f;
System.out.println("I = " + i + " Fare = " + fare + " Night = " + night + " 25%Extra = " + extra);
}
System.out.println("Day = " + fare + " Night = " + night);
}
kmIndex是公里的指數。儀表讀數分別爲1.00,1.10,1.20,1.30 ... 1.90,2.00 ...因此kmIndex爲1.00 = 0,1.10 = 1,1.20-3等等。
結果,我得到的每個碼,應該是提到如下:
我已經工作到4.00,並在結果不正確的聲明undet應該是相關不分日夜。
我在這方面做了很多工作,但無法按預期得到結果。如果我試圖糾正一件事情,那麼其他人得到錯誤或不給予預期的結果。任何人都可以幫助我解決這個問題。花了幾乎整整一天的時間來解決這個問題。
你能解釋一下「應該是」這一欄嗎?在這種情況下,爲什麼應該是19而不是18.5?你能否展示實現這一結果的步驟? – Juliano
「應該」的結果是按照這裏:http://www.trafficpolicemumbai.org/new_auto_tariff_card.pdf – Tvd