Maison > Article > développement back-end > Un moyen efficace de vérifier si le nième nombre de Fibonacci est un multiple de 10 ?
Ici, nous verrons un moyen efficace de vérifier si le nième terme de Fibonacci est un multiple de 10. Supposons que les termes de Fibonacci soient {0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987}. Ici donc, le 15ème nombre de Fibonacci (en partant de 0) est divisible par 10. Pour 16, cela reviendra vrai.
L'un des moyens les plus simples est de générer des nombres de Fibonacci jusqu'à un terme donné et de vérifier s'il est divisible par 10 ? Mais cette solution n’est pas bonne car elle ne fonctionne pas pour les objets plus volumineux.
Une autre bonne méthode est la suivante -
Termes de Fibonacci- 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
Ces les nombres (marqués en lettres grasses) sont divisibles par 2. Ils sont séparés par 3 termes de Fibonacci. De même, veuillez vérifier -
Termes de Fibonacci : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
tous les 5 termes sont divisible par 5. Maintenant, le LCM de 3 et 5 est de 15. On peut donc dire que chaque 15ème terme de Fibonacci est divisible par 10.
Regardons l'algorithme pour comprendre l'idée. La traduction chinoise deBegin if term is divisible by 15, then return true end if return false End
#include<iostream> using namespace std; bool fiboDivTen(int term) { if(term % 15 == 0){ return true; } return false; } int main() { int term = 45; if (fiboDivTen(term)) cout << "Divisible"; else cout << "Not Divisible"; }
Divisible
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!