java-兔子繁殖问题

題目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一

对兔子,假如兔子都不死,问每个月的兔子总数为多少

/**
 * @author 三一
 * @time 2018-5-6
 */

class Test {
	public static void main(String[] args) {
		// 用数组记录每一个兔子大小的个数
		long a[] = new long[3];

		a[0] = 0;// 一月大小
		a[1] = 0;// 二月大小
		a[2] = 0;// 大于或者等于三月大小

		long s = 0;// 定义一个中间变量
		long sum = 0;// 对数

		for (int i = 1; i < 100; i++) {
			s = a[0];
			// 计算三月大小的兔子的个数:二月的+本三月的
			a[2] = a[2] + a[1];
			// 计算新生的兔子的个数,即一月大小的
			if (i == 1) {
				a[0] = 1;
			} else {
				a[0] = a[2];
			}
			// 计算二月大小的兔子:为初始的时候一月的数量
			a[1] = s;
			sum = a[0] + a[1] + a[2];// 总数对
			System.out.println("第" + i + "月后," + "一共有:" + sum + "对," + "总数为:" + 2 * sum);
		}

	}
}

你可能感兴趣的:(java)