黑马程序员技术交流社区

标题: 我觉得是13天,结果为什么会是19天?你觉的是几呢? [打印本页]

作者: Florida2015    时间: 2015-8-29 16:27
标题: 我觉得是13天,结果为什么会是19天?你觉的是几呢?
  1. /*
  2. *  小明的妈妈每天会给他20元零花钱。
  3. *  平日里,小明先花掉一半,再把一半存起来。
  4. *  每到周日,小明拿到钱后会把所有零花钱花掉一半。
  5. *  请编程计算,从周一开始,小明需要多少天才能存够100元?
  6. *  */
  7. public class Test10 {

  8.         public static void main(String[] args) {
  9.                 int days = 0;
  10.                 int sum = 0;
  11.                 while(sum <=100){
  12.                 sum = sum+10; //每天存一半
  13.                 days++;
  14.                 if (days%7 == 0) //如果是星期日
  15.                 {
  16.                     sum = (sum+10)/2; //sum 加上十元  再花掉一半
  17.                 }
  18.                 System.out.println("第"+days+"天金额为"+sum);
  19.                 
  20.                   }
  21.                 System.out.print("小明存够100元需要的天数是  "+days+"天");
  22.                 }

  23.         }
复制代码

为什么会是19,而不是13天呢

QQ截图20150829162509.png (112.64 KB, 下载次数: 4)

为什么代码输出的是19呢?

为什么代码输出的是19呢?

作者: Florida2015    时间: 2015-8-29 16:28
如果有错的话,大家告我一下哪错了
作者: liuch111    时间: 2015-8-29 16:52
如果是星期天
sum=(sum+20)/2;   //星期天是拿到钱后(+20) 花掉一半(除以2)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2