小明的妈妈每天会给他20元零花钱。平日里,小明先花掉一半,再把一半存起来 * 每到周日,小明拿到钱后会把所有零花钱花掉一半。请编程计算,从周一开始,小明需要多少天才能存够100元?

------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
/**
 * 代码已经运行过,并且能够实现功能。
 * 我的一些系统配置:JDK使用的是1.7版本。开发工具eclipse。
 * 
 * 简介:小明的妈妈每天会给他20元零花钱。平日里,小明先花掉一半,再把一半存起来
 * 		每到周日,小明拿到钱后会把所有零花钱花掉一半。请编程计算,从周一开始,小明需要多少天才能存够100元?
 * 
 * 要求:用户需要输入需要达到的预期存款,计算出需要多少天完成
 * 
 * @author XiaoLu
 */

package examtest;
import java.util.*;
public class Test10 {

	public static void main(String[] args) {
		int i = input();
		System.out.println(i);
		//调用方法
		method(i);
	}
	
	/**
	 * 功能:接收用户输入的数据,并且限定用户输入的是一个小于139数,并且大于0的数。
	 * 
	 * 注:经验证,用户能存到的最大整数为139,当然这是舍去掉小数的结果
	 * 
	 * 参数:返回用户输入的整数
	 */
	public static int input(){
		//new一个对象
		Scanner sc = new Scanner(System.in);
		//做循环判断,当输入的值满足要求时推出,否则重新输入
		while(true){
			//打印提示语句
			System.out.println("----请输入一个小于139数,并且大于0的数-----");
			int t = sc.nextInt();
			//判断是不是符合要求
			if(t<=139 && t>0){
				//输入正确,直接返回
				return t;
			}
			else 
				System.out.println("------输入的数据不符合要求,请重新输入------");
		}
	}
	
	/**
	 * 功能:计算出用户要存到预定的金额时,所需要的时间
	 * 	
	 * 思维方法:
	 * 		1、定义一个for循环,当存入的金额大于等于预定金额时结束循环
	 * 		2、判定是不是星期天:
	 * 			是:将之前所有的金额加上星期天的金额除以二
	 * 			否:每天累加10元钱
	 * 
	 * @param money
	 */
	
	public static void method(int money){
		//定义一个变量,用于接收存钱的和
		int sum =0;
		//定义一个变量,用于判断循环,作为记住天数用
		System.out.println("测试");
		int i;
		for(i=1;sum <money;i++ ){
			//当是星期天是,用掉的是之前的总和加上今天的20总和的一半
			if(i%7==0){
				sum = (sum+20)/2;
//				System.out.println(sum);
			}
			else
				sum +=10;
//			System.out.println(i+"..."+sum);
		}
		//因为i在上面循环结束时,自加了一次,所以这里需要 i-- 一次。
		System.out.println("第"+(--i)+"天能存满"+sum);
	}
}



代码下载地址:http://download.csdn.net/detail/lmh820822/8351843 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值