国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Table des matières
Logique des séries de Fibonacci
Diverses méthodes de création de séries de Fibonacci
1. Approche itérative
2. Méthode récursive
3. Fibonacci en utilisant Array
Comment trouver le Nième terme de la série de Fibonacci??
Méthode 2
Conclusion
Maison développement back-end Tutoriel C#.Net Série de Fibonacci en C#

Série de Fibonacci en C#

Sep 03, 2024 pm 03:34 PM
c# c# tutorial

La série Fibonacci en C# dans la série Fibonacci est l'une des célèbres séries de séquences. La séquence est 0, 1, 1, 2, 3, 5, 8…. La série de Fibonacci commence à partir de zéro et un et le nombre suivant est la somme des deux nombres précédents. On dit que la série Fibonacci a été créée par M. Leonardo Pisano Bigollo au 13ème siècle. La série de Fibonacci est utile dans certains scénarios. Fondamentalement, il était à l’origine utilisé pour résoudre le problème des lapins, c’est-à-dire le nombre de lapins nés d’un couple. Il existe également d'autres problèmes dans lesquels la séquence de Fibonacci est utile.

Logique des séries de Fibonacci

Comme dans la série de Fibonacci, le nombre est la somme de ses deux nombres précédents. Donc, si nous avons une série de Fibonacci, disons 0, 1, 1, 2, 3, 5, 8, 13, 21… D'après ce nombre suivant, ce serait la somme de ses deux précédents comme 13 et 21. Donc le nombre suivant est 13. +21=34.

Voici la logique pour générer des séries de Fibonacci

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

Où F(n) est le numéro du terme et F(n-1) +F(n-2) est une somme des valeurs précédentes.

Donc si nous avons les séries 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89…

Selon la logique F(n)= F(n-1) +F(n-2)

F(n)= 55+89

F(n)= 144

Le prochain mandat serait 144.

Diverses méthodes de création de séries de Fibonacci

Les séries de Fibonacci peuvent être générées de plusieurs manières.

1. Approche itérative

Cette méthode est la manière la plus simple de générer des séries.

Code?:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespaceFibonacciDemo
{
classProgram
{
staticint Fibonacci(int n)
{
intfirstnumber = 0, secondnumber = 1, result = 0;
if (n == 0) return 0; //It will return the first number of the series
if (n == 1) return 1; // it will return ?the second number of the series
for (int i = 2; i<= n; i++)? // main processing starts from here
{
result = firstnumber + secondnumber;
firstnumber = secondnumber;
secondnumber = result;
}
return result;
}
staticvoid Main(string[] args)
{
Console.Write("Length of the Fibonacci Series: ");
int length = Convert.ToInt32(Console.ReadLine());
for(int i = 0; i< length; i++)
{
Console.Write("{0} ", Fibonacci(i));
}
Console.ReadKey();
}
}
}

2. Méthode récursive

C'est une autre méthode pour résoudre ce problème.

Méthode 1

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespaceFibonacciDemo
{
classProgram
{
staticint Fibonacci(int n)
{
intfirstnumber = 0, secondnumber = 1, result = 0;
if (n == 0) return 0; //it will return the first number of the series
if (n == 1) return 1; // it will return the second number of the series
return Fibonacci(n-1) + Fibonacci(n-2);
}
staticvoid Main(string[] args)
{
Console.Write("Length of the Fibonacci Series: ");
int length = Convert.ToInt32(Console.ReadLine());
for(int i = 0; i< length; i++)
{
Console.Write("{0} ", Fibonacci(i));
}
Console.ReadKey();
}
}
}

Méthode 2

using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace FibonacciSeries
{
class Program
{
public static void Fibonacci
(
int firstnumber,
int secondnumber,
int count,
int length,
)
{
if (count <= length)
{
Console.Write("{0} ", firstnumber);
Fibonacci(secondnumber, firstnumber + secondnumber, count + 1, length);
}
}
public static void Main(string[] args)
{
Console.Write("Length of the Fibonacci Series: ");
int length = Convert.ToInt32(Console.ReadLine());
Fibonacci(0, 1, 1, length);
Console.ReadKey();
}
}
}

Sortie?:

Série de Fibonacci en C#

3. Fibonacci en utilisant Array

Code?:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
public class Program
{
public static int[] Fibonacci(int number)
{
int[] a = new int[number];
a[0] = 0;
a[1] = 1;
for (int i = 2; i < number; i++)
{
a[i] = a[i - 2] + a[i - 1];
}
return a;
}
public static void Main(string[] args)
{
var b = Fibonacci(10);
foreach (var elements in b)
{
Console.WriteLine(elements);
}
}
}

Sortie?:

Série de Fibonacci en C#

Comment trouver le Nième terme de la série de Fibonacci??

Voici les méthodes

Méthode 1

Code?:

using System;
namespace FibonacciSeries
{
class Program {
public static int NthTerm(int n)
{
if ((n == 0) || (n == 1))
{
return n;
}
else
{
return (NthTerm(n - 1) + NthTerm(n - 2));
}
}
public static void Main(string[] args)
{
Console.Write("Enter the nth term of the Fibonacci Series: ");
int number = Convert.ToInt32(Console.ReadLine());
number = number - 1;
Console.Write(NthTerm(number));
Console.ReadKey();
}
}
}

Le code ci-dessus sert à trouver le nième terme de la série de Fibonacci. Par exemple, si nous voulons trouver le 12ème terme de la série alors le résultat serait 89.

Méthode 2

(O(Log t) Heure).

Il existe une autre formule de récurrence qui peut être utilisée pour trouver le nombre de Fibonacci Si t est pair alors = t/2?:

F(t) = [2*F(k-1) + F(k)]*F(k)

Si t est impair alors k = (t + 1)/2

F(t) = F(k)*F(k) + F(k-1)*F(k-1)

Matrice de Fibonacci

Après avoir obtenu le déterminant, nous obtiendrons (-1)t = Ft+1Ft-1 – Ft2

FmFt + Fm-1Ft-1 = Fm+t-1

En mettant t = t+1,

FmFt+1 + Fm-1Ft = Fm+t

Mettre m = t

F2t-1 = Ft2 + Ft-12

F2t = (Ft-1 + Ft+1)Ft = (2Ft-1 + Ft)Ft

Pour obtenir la formule, nous ferons ce qui suit

Si t est pair, mettez k = t/2

Si t est impair, mettez k = (t+1)/2

Ainsi, en triant ces nombres, nous pouvons empêcher l'utilisation constante de l'espace mémoire de STACK. Cela donne une complexité temporelle de O(n). L'algorithme récursif est moins efficace.

Code?:

int f(n) :
if( n==0 || n==1 )
return n;
else
return f(n-1) + f(n-2)

Maintenant, lorsque l'algorithme ci-dessus s'exécute pour n=4

fn(4)

f(3)???????????? f(2)

f(2)?? f(1)???? f(1)?? f(0)

f(1)?f(0)

Donc c’est un arbre. Pour calculer f(4), nous devons calculer f(3) et f(2) et ainsi de suite. Pour une petite valeur de 4, f(2) est calculé deux fois et f(1) est calculé trois fois. Ce nombre d'ajouts augmentera pour les grands nombres.

Il existe une conjecture selon laquelle le nombre d'additions requis pour calculer f (n) est f (n+1) -1.

Conclusion

Ici, la méthode itérative est toujours préférée car elle a une approche plus rapide pour résoudre ce genre de problème. Ici, nous stockons le premier et le deuxième nombre de la série de Fibonacci dans le numéro précédent et le numéro précédent (ce sont deux variables) et nous utilisons également le numéro actuel pour stocker le numéro de Fibonacci.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefa?on, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Générateur de nombres aléatoires en C# Générateur de nombres aléatoires en C# Sep 03, 2024 pm 03:34 PM

Guide du générateur de nombres aléatoires en C#. Nous discutons ici du fonctionnement du générateur de nombres aléatoires, du concept de nombres pseudo-aléatoires et sécurisés.

Factorielle en C# Factorielle en C# Sep 03, 2024 pm 03:34 PM

Guide de Factorial en C#. Nous discutons ici de l'introduction de factorial en c# ainsi que de différents exemples et de l'implémentation du code.

La différence entre le multithreading et le C # asynchrone La différence entre le multithreading et le C # asynchrone Apr 03, 2025 pm 02:57 PM

La différence entre le multithreading et l'asynchrone est que le multithreading exécute plusieurs threads en même temps, tandis que les opérations effectuent de manière asynchrone sans bloquer le thread actuel. Le multithreading est utilisé pour les taches à forte intensité de calcul, tandis que de manière asynchrone est utilisée pour l'interaction utilisateur. L'avantage du multi-threading est d'améliorer les performances informatiques, tandis que l'avantage des asynchrones est de ne pas bloquer les threads d'interface utilisateur. Le choix du multithreading ou asynchrone dépend de la nature de la tache: les taches à forte intensité de calcul utilisent le multithreading, les taches qui interagissent avec les ressources externes et doivent maintenir la réactivité de l'interface utilisateur à utiliser asynchrone.

Nombres premiers en C# Nombres premiers en C# Sep 03, 2024 pm 03:35 PM

Guide des nombres premiers en C#. Nous discutons ici de l'introduction et des exemples de nombres premiers en c# ainsi que de l'implémentation du code.

C # vs C: Histoire, évolution et perspectives d'avenir C # vs C: Histoire, évolution et perspectives d'avenir Apr 19, 2025 am 12:07 AM

L'histoire et l'évolution de C # et C sont uniques, et les perspectives d'avenir sont également différentes. 1.C a été inventé par Bjarnestrousstrup en 1983 pour introduire une programmation orientée objet dans le langage C. Son processus d'évolution comprend plusieurs normalisations, telles que C 11, introduisant des mots clés automobiles et des expressions de lambda, C 20 introduisant les concepts et les coroutines, et se concentrera sur les performances et la programmation au niveau du système à l'avenir. 2.C # a été publié par Microsoft en 2000. Combinant les avantages de C et Java, son évolution se concentre sur la simplicité et la productivité. Par exemple, C # 2.0 a introduit les génériques et C # 5.0 a introduit la programmation asynchrone, qui se concentrera sur la productivité et le cloud computing des développeurs à l'avenir.

Modèles en C# Modèles en C# Sep 03, 2024 pm 03:33 PM

Guide des modèles en C#. Nous discutons ici de l'introduction et des 3 principaux types de modèles en C# ainsi que de ses exemples et de l'implémentation du code.

Comment changer le format de XML Comment changer le format de XML Apr 03, 2025 am 08:42 AM

Il existe plusieurs fa?ons de modifier les formats XML: édition manuellement avec un éditeur de texte tel que le bloc-notes; Formatage automatique avec des outils de mise en forme XML en ligne ou de bureau tels que XMLBeautifier; Définir les règles de conversion à l'aide d'outils de conversion XML tels que XSLT; ou analyser et fonctionner à l'aide de langages de programmation tels que Python. Soyez prudent lorsque vous modifiez et sauvegardez les fichiers d'origine.

Palindrome en C# Palindrome en C# Sep 03, 2024 pm 03:34 PM

Guide du Palindrome en C#. Nous discutons ici de l'introduction et de la logique derrière le palindrome en C#?ainsi que des différentes méthodes avec son code.

See all articles