検索
ホームページバックエンド開発PHPの問題PHPでフィボナッチ数列を実行する方法

PHPでフィボナッチ数列を実行する方法

黄金分割数列とも呼ばれるフィボナッチ数列は、数学者レオナルドダ・フィボナッチがウサギの生殖を例として紹介したことにちなんで命名され、紹介されたため「ウサギ数列」とも呼ばれています。これは、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

関連する推奨事項: 「php チュートリアル

方法 1: 再帰を使用する

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

<?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 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター