ホームページ > バックエンド開発 > PHPチュートリアル > PHPでフィボナッチ数列を実装するにはどうすればよいですか? (コード例)

PHPでフィボナッチ数列を実装するにはどうすればよいですか? (コード例)

藏色散人
リリース: 2023-04-05 16:34:01
オリジナル
8296 人が閲覧しました

黄金分割数列としても知られるフィボナッチ数列は、ウサギの生殖を例として数学者レオナルドダ フィボナッチによって導入されたため、「ウサギ数列」とも呼ばれます。このような数列を指します: 1、1、 2、3、5、8、13、21、34、...、簡単に言えば、フィボナッチ数列は一連の要素であり、最初の 2 つの要素が加算されます。0 と 1 から開始して次の要素を取得します。

PHPでフィボナッチ数列を実装するにはどうすればよいですか? (コード例)

この記事では、PHP を使用してフィボナッチ数列を実装する方法 を紹介します。数値 n が与えられた場合、n 番目の項までのフィボナッチ数列を見つける必要があります。

例:

输入:10 
输出:0 1 1 2 3 5 8 13 21 34 
输入:15 
输出:0 1 1 2 3 5 8 13 21 34 55 89 144 233 377
ログイン後にコピー

方法 1: 再帰の使用

再帰とは、基本条件が一致して終了するまで同じ関数を繰り返し呼び出す方法です。再帰。

<?php
function Fibonacci($number){

    if ($number == 0)
        return 0;
    else if ($number == 1)
        return 1;
    else
        return (Fibonacci($number-1) +
            Fibonacci($number-2));
}
$number = 10;
for ($counter = 0; $counter < $number; $counter++){
    echo Fibonacci($counter),&#39; &#39;;
}
ログイン後にコピー

出力:

0 1 1 2 3 5 8 13 21 34
ログイン後にコピー
ログイン後にコピー

方法 2: 反復法を使用する

まず、最初と 2 番目の数値を 0 と 1 に初期化します。最初と 2 番目の数字を出力します。次に、プロセスを反復 while ループに送り、前の 2 つの数値を加算して次の数値を取得します。同時に、最初の数値と 2 番目の数値、2 番目の数値と 3 番目の数値を交換します。

<?php
function Fibonacci($n){

    $num1 = 0;
    $num2 = 1;

    $counter = 0;
    while ($counter < $n){
        echo &#39; &#39;.$num1;
        $num3 = $num2 + $num1;
        $num1 = $num2;
        $num2 = $num3;
        $counter = $counter + 1;
    }
}

$n = 10;
Fibonacci($n);
ログイン後にコピー

出力:

0 1 1 2 3 5 8 13 21 34
ログイン後にコピー
ログイン後にコピー

関連ビデオチュートリアルの推奨事項: "PHP チュートリアル"

この記事は、PHP でのフィボナッチの実装についてです。数字のシーケンスの方法について、それが必要な友達に役立つことを願っています。

以上がPHPでフィボナッチ数列を実装するにはどうすればよいですか? (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート