> 백엔드 개발 > PHP 튜토리얼 > PHP와 황금분할 시퀀스의 완벽한 만남(놓치지 마세요)

PHP와 황금분할 시퀀스의 완벽한 만남(놓치지 마세요)

青灯夜游
풀어 주다: 2023-04-10 13:02:01
원래의
2884명이 탐색했습니다.

살면서 우리가 육안으로 아름답다고 구별하는 것들은 마술처럼 황금비를 담고 있는 경우가 많습니다. 이때 우리는 한숨을 쉬게 됩니다. 수학의 아름다움은 어디에나 있습니다. 황금분할 수열(피보나치 수열이라고도 함)의 마지막 항과 이전 항 사이의 비율의 극한은 2/2 빼기 1의 근이며, 이는 대략 0.618(즉, 황금분할 비율)과 같습니다. 그렇다면 PHP를 사용하여 황금분할 시퀀스를 구현하는 방법은 무엇입니까? 걱정하지 마세요. 시간을 내어 이해해 보도록 하겠습니다.

먼저 골든 섹션 수열(예: 피보나치 수열)을 이해해 보겠습니다.

피보나치 수열은 다음 수열을 의미합니다.

1 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765....

즉, 처음 두 값은 모두 1이고 세 번째 자리부터 시작하며 각 자리는 현재 자리의 이전 두 자리의 합입니다

정규식입니다 :

Fn = F(n-1) + F(n+1)

  • F: 현재 시퀀스를 참조

  • n: 인덱스 열의 첨자

알겠습니다. 금색은 이해합니다. 시퀀스(피보나치 수열)을 분할하고, 이를 PHP를 사용하여 구현하는 방법을 살펴보겠습니다.

방법 1: 배열

을 사용하여 위에 주어진 시퀀스를 관찰하고 배열 지식과 결합하여 다음을 분석할 수 있습니다.

  • 배열 첨자가 0 또는 1인 경우 요소의 값은 입니다. 1;1

  • 数组下标为2时,元素是a[0]+a[1];

  • 数组下标为3时,元素是a[1]+a[2];

  • .....

  • 数组下标为n时,元素是a[n-2]+a[n-1];

可以得出:

  • a[0]=1

  • a[1]=2

  • a[n]=a[n-2]+a[n-1]

배열 첨자가 2이면 요소는 a[0]+a[1]입니다.

배열 첨자가 3이면 요소는 a[0]+a[1]입니다. 요소는 a [1]+a[2];PHP와 황금분할 시퀀스의 완벽한 만남(놓치지 마세요)

.....

배열 첨자가 n이면 요소는 a[n-2]입니다. +a[n-1 ];


결론을 내릴 수 있습니다: PHP와 황금분할 시퀀스의 완벽한 만남(놓치지 마세요)

a[0]=1

a[1]=2

🎜🎜a[n]=a[n-2]+a[n-1] (n>2)🎜🎜🎜🎜코드 구현: 🎜
<?php
header("Content-type:text/html;charset=utf-8");
function test($num){
    $arr=[];
    for($i=0;$i<$num;$i++)
    {
        if($i==0 || $i==1){
            $arr[$i]=1;
        }else{
            $arr[$i]=$arr[$i-1]+$arr[$i-2];
        }
		echo $arr[$i]." ";
    }
}
echo "斐波那契数列前10位:";
test(10);
echo "<br>斐波那契数列前11位:";
test(11);
echo "<br>斐波那契数列前12位:";
test(12);
?>
로그인 후 복사
🎜출력: 🎜🎜🎜🎜🎜이해하기 배열을 사용하여 피보나치 수열을 찾는 방법을 배웠으니 이제 재귀를 사용하여 피보나치 수열을 찾는 방법을 살펴보겠습니다. 🎜🎜🎜방법 2: 재귀 사용🎜🎜
<?php
header("Content-type:text/html;charset=utf-8");
function fbnq($n) {
	if ($n <= 0) {
		return 0;
	}
	if ($n == 1 || $n == 2) {
		return 1;
	}
	return fbnq($n - 1) + fbnq($n - 2);
}

echo "斐波那契数列第10位:" . fbnq(10);
echo "<br>斐波那契数列第11位:" . fbnq(11);
echo "<br>斐波那契数列第12位:" . fbnq(12);
?>
로그인 후 복사
🎜출력: 🎜🎜🎜🎜🎜🎜재귀 방법도 구현했는데, 아주 간단하지 않나요! 🎜🎜재귀 알고리즘은 더 짧은 코드를 사용하여 책임 있는 문제를 해결할 수 있지만 작업 효율성은 상대적으로 낮습니다. 🎜🎜그렇습니다. 더 알고 싶다면 여기를 클릭하세요. → →🎜php 비디오 튜토리얼🎜🎜

위 내용은 PHP와 황금분할 시퀀스의 완벽한 만남(놓치지 마세요)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿