>  기사  >  Java  >  자바에서 피보나치 수열을 간단하게 구현하는 방법

자바에서 피보나치 수열을 간단하게 구현하는 방법

王林
王林앞으로
2019-11-26 13:27:082236검색

자바에서 피보나치 수열을 간단하게 구현하는 방법

피보나치 수열은 다음을 의미합니다. 수열의 마지막 항은 코드에서 처음 두 항의 합과 같습니다. a[i]=a[i-1]+a[i- 2] 이를 달성하기 위해.

토끼가 새끼토끼를 낳는 전형적인 문제

고전적인 문제: 토끼 한 쌍이 있는데, 생후 3개월부터 매달 한 쌍의 토끼를 낳고, 그 토끼들이 새끼를 낳는다. 세 번째 달이 지나면 매달 한 쌍의 토끼가 태어난다. 각 쌍의 토끼가 살아남는다고 가정하고, 한 달에 한 쌍의 토끼 수를 구하도록 프로그램하라.

추천 관련 비디오 튜토리얼: java 교육 비디오

코드 예:

핵심 코드, 피보나치 수열(마지막 항은 처음 두 항의 합과 같습니다):

public static void getTuTu(int[] tutu, int n) {
		if (n == 1) {
			System.out.println("第一个月兔子对数为1");
		} else if (n == 2) {
			System.out.println("第二个月兔子对数为1");
		} else {
			tutu[0] = 1;
			tutu[1] = 1;
			System.out.println("第1个月兔子对数为1");
			System.out.println("第2个月兔子对数为1");
			for (int i = 2; i < n; i++) {
				tutu[i] = tutu[i - 1] + tutu[i - 2];//数组记录兔子对数
				System.out.println("第" + (i + 1) + "个月的兔子对数为" + tutu[i]);
			}
		}
	}

전체 코드:

package day191125;

import java.util.Scanner;

public class TuZi {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);

		while (true) {
			System.out.println("=========");
			System.out.println("输入求第几个月的兔子:");
			int n = input.nextInt();
			if (n <= 0) {
				System.out.println("输入错误重新输入");
				continue;
			}
			int[] tutu = new int[n];
			getTuTu(tutu, n);
		}

	}

	public static void getTuTu(int[] tutu, int n) {
		if (n == 1) {
			System.out.println("第一个月兔子对数为1");
		} else if (n == 2) {
			System.out.println("第二个月兔子对数为1");
		} else {
			tutu[0] = 1;
			tutu[1] = 1;
			System.out.println("第1个月兔子对数为1");
			System.out.println("第2个月兔子对数为1");
			for (int i = 2; i < n; i++) {
				tutu[i] = tutu[i - 1] + tutu[i - 2];

				System.out.println("第" + (i + 1) + "个月的兔子对数为" + tutu[i]);
			}
		}
	}
}

실행 중 결과 그림:

자바에서 피보나치 수열을 간단하게 구현하는 방법

물론 이를 달성하는 방법은 여러 가지가 있습니다. 다음은 한 가지 방법에 대한 간단한 소개입니다.

더 많은 관련 튜토리얼을 알고 싶다면 Java 학습 소개를 방문하세요. 누구나 함께 토론하고 배울 수 있습니다.

위 내용은 자바에서 피보나치 수열을 간단하게 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제