यहां हम यह जांचने का एक प्रभावी तरीका देखेंगे कि क्या nth फाइबोनैचि शब्द 10 का गुणक है या नहीं। मान लीजिए कि फाइबोनैचि शब्द {0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987} हैं। तो यहां 15 वें (0 से गिनती) फाइबोनैचि शब्द 10 से विभाज्य है। 16 के लिए यह सही होगा।
सबसे आसान तरीका है दिए गए टर्म तक फाइबोनैचि संख्याएं जेनरेट करना, और जांचें कि यह 10 से विभाज्य है या नहीं? लेकिन यह समाधान अच्छा नहीं है, क्योंकि यह बड़ी शर्तों के लिए काम नहीं करेगा।
एक और अच्छा तरीका नीचे जैसा है -
फाइबोनैचि शब्द - 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
ये संख्याएं (बोल्ड अक्षरों के रूप में चिह्नित) 2 से विभाज्य हैं और उनके अंतराल 3 फाइबोनैचि शब्द हैं। इसी तरह, कृपया जांचें कि -
फाइबोनैचि शब्द:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
प्रत्येक 5वाँ पद 5 से विभाज्य है। अब 3 और 5 का LCM 15 है। इसलिए हम कह सकते हैं कि प्रत्येक 15 th फाइबोनैचि शब्द 10 से विभाज्य हैं।
आइए विचार प्राप्त करने के लिए एल्गोरिथम देखें।
एल्गोरिदम
fiboDivTen(term)
Begin 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