一块钱买一瓶水,两个空瓶换一瓶水,三个瓶盖换一瓶水,现在有20块钱,一共可以喝多少瓶水?(方法2)

package com.zhiyou101;  
        /**
         *  一块钱买一瓶水,两个空瓶换一瓶水,三个瓶盖换一瓶水,现在有20块钱,一共可以喝多少瓶水?
         * @author Administrator
         *
         */
        public class BuyWater2 {
            public static void main(String[] args){
                int money = 20; //20块钱
                int water = money;//一块钱买一瓶水
                int bottle = 0; //空瓶数量
                int bottleCap = 0;//瓶盖数量
                int index = 0; //计数 
                while(true){ //自制死循环,需要自己创建条件跳出循环
                    index += water;  // 一共喝了多少水
                    bottle += water;  //一瓶水喝完得一个空瓶
                    bottleCap += water; //一瓶水喝完得一个瓶盖

                    water = 0; //水喝完了

                    water += bottle/2; //两个空瓶换一瓶水
                    bottle = bottle%2; //剩下得空瓶(0 or 1)

                    water += bottleCap/3; //三个瓶盖换一瓶水
                    bottleCap = bottleCap%3; //剩余的瓶盖(0 or 1 or 2)
                    if(water<=0){//当没水的时候跳出循环
                        break;
                    }
                }
                System.out.println(index);
            }



    }
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值