Java 20块买气水_一个人去买汽水.一块钱一瓶,三

这段代码展示了如何用C#编写一个程序,计算在给定金钱(20元)的情况下,利用1元一瓶、3个瓶盖换1瓶、2个空瓶换1瓶的规则,能买到的最多汽水数。程序通过递归和循环实现,最后输出总共能购买的汽水数量以及剩余的瓶盖和空瓶数。
摘要由CSDN通过智能技术生成

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

static void Main(string[] args)

{

Console.WriteLine("一个人去买汽水。1块钱1瓶,3个瓶盖可以换1瓶汽水,2个空瓶可以换1瓶汽水。");

Console.WriteLine("请问:20元钱总共能买到多少瓶汽水");

Console.WriteLine("----------------------------------------------------------------------");

Console.WriteLine("\r\n\r\n");

//假设手上共有20元

int memory = 20;

int pinggai = 0;

int kongping = 0;

int total = Buy(memory, ref pinggai, ref kongping);

Console.WriteLine("总计可以买{0}瓶汽水", total);

Console.WriteLine("剩余瓶盖{0},剩余空瓶{1}", pinggai, kongping);

Console.ReadKey();

}

static int Buy(int memory, ref int pinggai, ref int kongping)

{

if (memory == 0 && pinggai < 3 && kongping < 2)

return 0;

else

{

//总数

int total = 0;

if (memory != 0)

total = pinggai = kongping = memory;

//兑换瓶数

int duihuan = pinggai / 3 + kongping / 2;

pinggai = duihuan + pinggai % 3;

kongping = duihuan + kongping % 2;

total += duihuan;

return total + Buy((memory - memory / 1), ref pinggai, ref kongping);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值