瓶盖递归 1块钱买一瓶水,三个瓶盖是换一瓶汽水,问20块钱能买 多少瓶汽水(不能借)

  • Post author:
  • Post category:其他



瓶盖递归 1块钱买一瓶水,三个瓶盖是换一瓶汽水,问20块钱能买 多少瓶汽水(不能借)

package com.ftl;

import java.util.Scanner;

public class Water {

	public static void main(String[] args) {
		// 瓶盖递归 1块钱买一瓶水,三个瓶盖是换一瓶汽水,问20块钱能买 多少瓶汽水(不能借)
		Scanner scanner=new Scanner(System.in);
		System.out.println("请输入钱数:");
		int money = scanner.nextInt();
		int number=0;
		int cap=0;
		int water=0;
		Water wat=new Water();
		int water2 = wat.water(money, number, cap, water);
		System.out.println(money+"元钱能买"+water2+"瓶汽水!");
		scanner.close();
	}

	// 瓶盖递归 1块钱买一瓶水,三个瓶盖是换一瓶汽水,问20块钱能买 多少瓶汽水(不能借)
	public int water(int money,int number,int cap,int water) {
		water+=money;
		cap+=water;
		number+=water;
		water=0;
		money=0;
		if (cap<3) {
			return number;
		}else {

			return water(money,number,cap%3,cap/3);
		}
		
		
	}
}


控制台打印结果:


问题进阶:1块钱买一瓶水,三个瓶盖是换一瓶汽水,两个汽水瓶换一瓶汽水,问20块钱能买 多少瓶汽水(不能借)

package com.ftl;

import java.util.Scanner;

public class Water {

	public static void main(String[] args) {
		// 瓶盖递归 1块钱买一瓶水,三个



版权声明:本文为ftl111原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。