台鐵票價查詢程式(高雄到台南)

看板java作者 (賣小女孩的爺爺)時間15年前 (2009/04/22 23:32), 編輯推噓4(401)
留言5則, 4人參與, 最新討論串1/1
import java.util.Scanner; public class text01 { public static int calculate(int x, int y, int z){ //宣告里程 double[] a = { 325.1, 332.7, 336.7, 339.6, 342.6, 349.9, 353.9, 358.0, 363.1, 365.0, 371.8}; double ans = (a[x]- a[y]); if(ans<0){ ans = (-1)*ans; } if(ans<10){ ans = 10; if(z==0){ ans = (int) ans*1.46 + 1; return (int)ans; }else if(z==1){ ans = (int) ans*1.75 + 1; return (int)ans; }else if(z==2){ ans = (int) ans*2.27 + 1; return (int)ans; } } if(z==0){ ans = (int) ans*1.46 + 2; return (int)ans; }else if(z==1){ ans = (int) ans*1.75 + 2; return (int)ans; }else if(z==2){ ans = (int) ans*2.27 + 2; return (int)ans; }else{ ans = 0; return (int)ans; } } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //宣告站名 String[] a = {"臺南", "保安", "中洲", "大湖", "路竹", "岡山", "橋頭", "楠梓", "新左營", "左營", "高雄"}; //宣告火車種類 String[] b = {"區間車", "莒光號", "自強號"}; int x,y,z,i; System.out.println("請問啟程站是哪一站?"); //呼叫陣列 for(i=0;i<=10;i++){ System.out.print(i+1 + "." + a[i] + " "); if(i==10){System.out.println("");} } x = scanner.nextInt() - 1; System.out.println("請問終點站是哪一站?"); //呼叫陣列 for(i=0;i<=10;i++){ System.out.print(i+1 + "." + a[i] + " "); if(i==10){System.out.println("");} } y = scanner.nextInt() - 1; System.out.println("請選擇火車種類"); //呼叫陣列 for(i=0;i<=2;i++){ System.out.print(i+1 + "." + b[i] + " "); if(i==2){System.out.println("");} } z = scanner.nextInt() - 1; System.out.println("您的啟程站是" + a[x] + "," + "終點站是" + a[y] + "," + b[z] + "," + "票價為" + calculate(x, y, z) + "元"); } } 可以請板上的高手們看一下程式碼有累贅的部分嗎? 剛剛寫完這一支程式,覺得台鐵A錢A很大 一張票多收1~2元 (嘆氣) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.24.253.9

04/23 02:35, , 1F
請問第5行的那些浮點數是代表什麼?
04/23 02:35, 1F

04/23 03:07, , 2F
台鐵公佈的里程表,每一站與台北站的距離
04/23 03:07, 2F

04/23 13:45, , 3F
你要不要把別人掛server、DB、線路成本算進去 再算這兩塊錢
04/23 13:45, 3F

04/25 05:09, , 4F
一張幾百塊的票賺你一兩塊算啥,鐵路局真正的A錢之道是
04/25 05:09, 4F

04/25 05:13, , 5F
短程區間統一票價,你去計較那個還差不多…
04/25 05:13, 5F
文章代碼(AID): #19xpY1Xs (java)