喬巴
2007-05-30 12:54:21 UTC
我是用 J2SE JDK 6.0u1 寫書上計算車資的練習題:
假設計程車車資計費方式如下:
(1) 1000 公尺以內 60 元,超過 1000 公尺時,
(2) 日間以每 500 公尺加收 6 元,不足 500 公尺時,以 500 公尺計算。
(3) 夜間以每 300 公尺加收 6 元,不足 300 公尺時,以 300 公尺計算。
請根據以上條件,寫一程式完成計程車車資的計算。
我的程式碼如下:
import java.io.*;
public class TaxiRate
{
public static void main(String[] args) throws IOException
{
int day=1;int night=2;int count=0;
System.out.println("請輸入乘車時段: 1 為白天 ; 2 為夜晚");
int time=System.in.read();
System.in.read();System.in.read();
System.out.println("請輸入搭乘里程數: 單位為公尺");
int distance=System.in.read();
switch(time) {
case 1:
if (distance<=1000) {
count=60;
} else {
count=(int)((double)((distance-1000)/500)+0.9)*6;
}
case 2:
if (distance<=1000) {
count=60;
} else {
count=(int)((double)((distance-1000)/300)+0.9)*6;
}
}
System.out.println("你所花費的車資為: "+count+"元");
}
}
結果程式最後結果: "你所花費的車資為: 0元"
我想可能是 int count=0 的影響,但如果拿掉 "=0", 有錯誤結果
"variable count might not have been initialized"
那我要怎麼 debug 以符合題目之要求呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.72.93.198
假設計程車車資計費方式如下:
(1) 1000 公尺以內 60 元,超過 1000 公尺時,
(2) 日間以每 500 公尺加收 6 元,不足 500 公尺時,以 500 公尺計算。
(3) 夜間以每 300 公尺加收 6 元,不足 300 公尺時,以 300 公尺計算。
請根據以上條件,寫一程式完成計程車車資的計算。
我的程式碼如下:
import java.io.*;
public class TaxiRate
{
public static void main(String[] args) throws IOException
{
int day=1;int night=2;int count=0;
System.out.println("請輸入乘車時段: 1 為白天 ; 2 為夜晚");
int time=System.in.read();
System.in.read();System.in.read();
System.out.println("請輸入搭乘里程數: 單位為公尺");
int distance=System.in.read();
switch(time) {
case 1:
if (distance<=1000) {
count=60;
} else {
count=(int)((double)((distance-1000)/500)+0.9)*6;
}
case 2:
if (distance<=1000) {
count=60;
} else {
count=(int)((double)((distance-1000)/300)+0.9)*6;
}
}
System.out.println("你所花費的車資為: "+count+"元");
}
}
結果程式最後結果: "你所花費的車資為: 0元"
我想可能是 int count=0 的影響,但如果拿掉 "=0", 有錯誤結果
"variable count might not have been initialized"
那我要怎麼 debug 以符合題目之要求呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.72.93.198