Java空瓶换饮料问题 一瓶饮料1元钱,两个空瓶换一瓶,有20元总共可以喝几瓶

Java空瓶换饮料问题 一瓶饮料1元钱,两个空瓶换一瓶,有20元总共可以喝几瓶,第1张

其实就是递归知识的运用!下面是代码,

public static void main(String[] args) {

Systemoutprintln(20+getNum(20));

}

public static int getNum(int money){

int sum = 0;

sum += (money / 2);

if(money>=2)

return sum+getNum(sum+money%2);

else

return 0;

}

运行下你就知道答案了!

设两个瓶子为a和b,液体分别为1和2,c瓶作为中间的过渡:

#include<stdioh>

void

main()

{int

a=1,b=2,c;

c=a;a=b;b=c;

printf("a=%d,b=%d\n",a,b);

}

#include"stdioh"

/啤酒2块钱一瓶,4个瓶盖可以换一瓶,2个瓶子可以

换一瓶啤酒,x块钱可以喝几瓶啤酒?/

void main()

{

int money,beer,bottle,cap,sum;

scanf("%d",&money);

bottle=cap=sum=money/2;

while(!(cap<4 && bottle <2))  //当瓶盖数小于4并且瓶子数小于2时,就不能换啤酒了哇

{

sum+=bottle/2;  //瓶子换啤酒

sum+=cap/4;  //瓶盖换啤酒

//瓶盖兑换成啤酒之后的瓶盖数和瓶子数

bottle+=cap/4;  //4个瓶盖换一瓶啤酒,那么瓶子数增加的数量

cap=cap/4+cap%4;

//瓶子兑换成啤酒之后的瓶盖数和瓶子数

cap+=bottle/2;  //2个瓶子换啤酒后增加的瓶盖数

bottle=bottle/2+bottle%2;

}

printf("能喝的啤酒数量 = %d 瓶\n",sum);

}

#include<stdioh>

int main()

{

//当前有Num个可乐瓶

int Num=364;

//总共喝了Tot瓶可乐

int Tot=0;

//当大于等于3时可换可乐

while(Num>=3)

{

//喝3瓶换一瓶

Num-=2;

Tot+=3;

}

//剩下Num瓶喝掉

Tot+=Num;

printf("剩%d瓶\n",Num);

printf("总共喝了%d瓶\n",Tot);

return 0;

}

一共可以喝449瓶,还剩下一个空瓶子。

300瓶啤酒,300空瓶,换100啤酒。100空瓶,换33啤酒,剩下一个空瓶子。33空瓶,换11啤酒,刚才剩下的那个空瓶子依然剩下。11个空瓶加刚才剩下的那个空瓶子,是12个空瓶,换4瓶啤酒,4个空瓶只能换一瓶啤酒,最终剩下1个空瓶。

啤酒总数:

300+100+33+11+4+1=449

以上就是关于Java空瓶换饮料问题 一瓶饮料1元钱,两个空瓶换一瓶,有20元总共可以喝几瓶全部的内容,包括:Java空瓶换饮料问题 一瓶饮料1元钱,两个空瓶换一瓶,有20元总共可以喝几瓶、用c语言编写两个瓶子液体交换、急需!、啤酒2块钱一瓶,4个瓶盖可以换一瓶,2个瓶子可以 换一瓶啤酒,x块钱可以喝几瓶啤酒我用C语言编的,但有错等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9483899.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存