------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
/*题目:小明的妈妈每天会给他20元零花钱。平日里,小明先花掉一半,再把一半存起来。
每到周日,小明拿到钱后会把所有零花钱花掉一半。请编程计算,从周一开始,小明需要多少天才能存够100元?*/
这道题目是偶然看到的,看完题目大概有了思路,每天花一半、存一半,也就是每天存10元,只有周日的时候,存的钱是(20+之前所有存的钱)/2,
这个思路是没有问题的,但是之后把解题步骤想的太复杂了,设定了嵌套循环,但运行结果一直不是自己想要的。于是,我试着把问题简单化,一步一步
的想代码,果然,抓住重点之后,很快就解决了问题。
正确思路:1.周一到周五存10元;
2.周日存10元,然后总金额再除以2;(可以设定一个判断当前是否为星期天)
3.那么,我可以设定一个变量me=100,表示需要达到的存款金额,另外设定一个变量k=0,表示当前小明拥有的存款,
最后设定一个表示变量d,表示天数。
于是,代码就出来了:
public class Test_07 {
public static void main(String[] args){
int me = 100;//需要存的金额
int d = 1;//天数
int k=0;//实际存的金额
while( k<me){
if(d%7==0){
k+=20;
k = k/2;
}else{
k+=10;
}
System.out.println("第"+d+"天--存:"+k);//这是将过程打印了出来,其实也可以只打印结果,但是这样更直观易懂
d++;
}
}
}