「java汽水案例」汽水瓶java

博主:adminadmin 2022-12-30 04:06:07 698

今天给各位分享java汽水案例的知识,其中也会对汽水瓶java进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

一元钱一瓶汽水,两个空瓶能换一瓶汽水,三个瓶盖能换一瓶汽水,问20元一共能喝多少瓶。java代码怎么写?

package 递归;

import java.util.Scanner;

public class 汽水 {

public static void main(String[] args) {

Scanner scan=new Scanner(System.in);

System.out.println("请输入您购买汽水所花的钱");

int money=scan.nextInt();

System.out.println("20元一共能喝"+cal(money,money,money)+"瓶");

}

/**

*

* @param sum 总瓶数

* @param cap 瓶盖数

* @param bottle 瓶子数

* @return

*/

public static int cal(int sum,int cap,int bottle){

int add=cap/3+bottle/2;//每次循环所增加的汽水

sum=sum+add;

System.out.println(sum);

cap=cap%3+add;//每次循环后的瓶盖子

System.out.println(cap);

bottle=bottle%2+add;//每次循环后的瓶子

System.out.println(bottle);

System.out.println("-----------------");

if(cap3bottle2){//递归结束的条件

return sum;

}else{

return cal(sum,cap,bottle);//递归调用

}

}

}

20元一共能喝113瓶

Java代码怎么写:有20块钱买汽水,1块一瓶,三盖子换一瓶,两空瓶换一瓶子,共能买多少汽水?

正确的结果:对兑了17次,共换了93个瓶子,第18次对兑时余下1个空瓶,2个瓶盖。

递归模型楼上“lzs丶灬 ”同志是正确的,但存在逻辑错误。我帮他修正如下:

   public static int test(int sum, int pingzi, int gaizi){

            if (pingzi  2  gaizi  3)

            {

                return sum;

            }

            int newPingzi = pingzi / 2;

            int newGaizi = gaizi / 3;

            sum += newPingzi;

            sum += newGaizi;

            pingzi = newPingzi + newGaizi + pingzi % 2;

            gaizi = newGaizi + newPingzi + gaizi % 3;

            return test(sum, pingzi, gaizi);

  }

有100瓶汽水,喝完后每3个空瓶能换1瓶,问最后一共喝了几瓶汽水,剩余几个空瓶。用JAVA编写程序

public class Bottle

{

static int Total = 0;

static int Left = 0;

void Drink(int Num)

{

int a = Num/3;

int b = Num%3;

if(Total == 0) {

Total = Total + Num;

}

Total = Total + a;

if (a+b3) {

Left = a+b;

return;

}

else {

Drink(a+b);

}

}

public static void main(String[] args) {

Bottle Bot = new Bottle();

Bot.Drink(5);

System.out.println("一共可以喝: "+Bottle.Total+"瓶");

System.out.println("剩下空瓶: "+Bottle.Left+"瓶");

}

}

用jAVA写程序。N瓶汽水,M个空瓶子可以换一瓶汽水。买N瓶汽水一共可以喝多少瓶? 想喝P瓶汽水,需要买多少

//-------------------------------正向的算法,就是知道N和M算出P----------------------------------------

int left=0,sum=0,newBott=0;

int N=34,M=3; //要改M,N值在这里改

newBott = N;

sum =N;

if(M==1){System.out.println("无限换");}

else

{

while((newBott+left)=M) //如果还能换

{

int temp1 = (newBott+left)%M; //换了之后剩下不够换的

int temp2 = (newBott+left)/M; //换出来新的

left = temp1;

newBott = temp2;

sum = sum + newBott + left; //总数增加

}

System.out.println("一共可换 "+sum+ " 瓶");

}

//------------------------------反向算法,就是知道P,M算出N---------------------------------------------

int left=0,sum=0,newBott=0;

int N,M=15,P=222; //要改M,P值在这里改

labelA: for(N=M;NP;N++)

{

if(M==1){N=1;System.out.println("需要 "+ N+ "瓶");break;} //如果可以1瓶换1瓶,那就只用1瓶

if(M==0){N=P;System.out.println("需要 "+ N+ "瓶");break;} //如果可以1瓶换0瓶,那就用P瓶

sum =N;

newBott = N;

while((newBott+left)M)

{

int temp1 = (newBott+left)%M;

int temp2 = (newBott+left)/M;

left = temp1;

newBott = temp2;

sum = sum + newBott + left;

if(P==sum){System.out.println("需要 "+ N+ "瓶");

break labelA;}

}

}

//--------------------------------------------------------------------------------

关于java汽水案例和汽水瓶java的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。