当前位置:首页 » 编程软件 » 换酒编程

换酒编程

发布时间: 2023-06-19 03:12:17

⑴ 啤酒2块1瓶,4个盖换1瓶,2个空瓶换1瓶,10块可以喝几瓶 .用C语言编程解决,在线等,急啊!

//代码有不懂的问我
#include<iostream>
usingnamespacestd;

voiddrinkBeer(int&money,int&bottleNum,int&capNum,int&beerNum){
if(money<2&&bottleNum<2&&capNum<4){
return;
}

//拿钱换酒
if(money>2){
intdrinkNum=money/2;
beerNum+=drinkNum;
bottleNum+=drinkNum;
capNum+=drinkNum;

money-=drinkNum*2;//剩余的钱
drinkBeer(money,bottleNum,capNum,beerNum);
}

//拿瓶子换酒
if(bottleNum>2){
intdrinkNum=bottleNum/2;
bottleNum-=drinkNum*2;//喝完后多余没喝的瓶子数
beerNum+=drinkNum;
bottleNum+=drinkNum;
capNum+=drinkNum;

drinkBeer(money,bottleNum,capNum,beerNum);
}

//拿瓶盖换酒
if(capNum>4){
intdrinkNum=capNum/4;
capNum-=drinkNum*4;
beerNum+=drinkNum;
bottleNum+=drinkNum;

drinkBeer(money,bottleNum,capNum,beerNum);
}

}

intmain(){
intmoney=10;
intbottleNum=0;
intcapNum=0;
intbeerNum=0;

drinkBeer(money,bottleNum,capNum,beerNum);

printf("总共喝了%d瓶 ",beerNum);
system("pause");
return0;
}

⑵ 这个python程序要怎么编写,麻烦编程和思路都写一下,谢谢

这其实就是解一元一次方程。

假设可以喝x瓶啤酒,则有x个空瓶可以兑换x/2瓶啤酒不需要付钱,x个瓶盖可以兑换x/4瓶啤酒不需要付钱。

所以,方程就是:

(x-x/2-x/4)*2=10

具体代码如下:

x=4

while True:

if (x-x/2-x/4)*2==10:

print(x)

break

x+=4

下面是运行截图:

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:710
制作脚本网站 发布:2025-10-20 08:17:34 浏览:972
python中的init方法 发布:2025-10-20 08:17:33 浏览:681
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:833
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:741
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1080
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:312
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:191
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:878
python股票数据获取 发布:2025-10-20 07:39:44 浏览:837