/*
需求:我有一张地铁卡 每天花费6(3块钱一次)块钱下班来回,
但是累计消费超过100元就打8折,超过150元就打5折,我
想知道一个月要花费多少钱?
分析:1:每天花费6块钱 总共要花费多少我们就定义一个消费金额的值
int start=0
每天都花费6快是一个常量就定义一个值
int pay=6
2:当累计金额消费超过100就打八折,打八折就是*0.8我们定义一个
double类型的常量 double x =0.8
当累计金额超过150就打五折 我们定义一个常量double y=0.5
3: 一个月算他30天从第一天开始所以我们定义一个天数的变量
int day=1 day<=30
这是一个范围的运算我们用for循环实现
当start>100 &<150 pay*=0.8 当start>150 pay*+=0.5
4: 累计金额随着天数的变化都是在+6动作所以当day++我们就start+=6
*/
class Test
{
public static void main(String[] args)
{
int start=0;
int pay=6;
double x=0.8;
double y=0.5;
for (int day=1; day<=30 ; day++)
{
if (start>100 & start<150)
{
pay*=0.8; //我测试了下问题就是出现在这里,我也知道int跟double类型做运算结果会是double类型
start+=pay;//可是我不知道具体该怎么改 问题主要处在超过100后*0.8 然后再start相加出现问题
}
/*
else if (start>150)
{
pay*=0.5;
start+=pay;
}*/
else
start+=pay;
System.out.println("第"+day+"天的时候总共花费了"+start+"元");
}
System.out.println("一个月总共花费了"+start+"元");
}
}
|