Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में n'th Fibonnaci Number का अंतिम अंक खोजने का कार्यक्रम

इस समस्या में, हमें एक नंबर N दिया जाता है। हमारा काम C++ में Nth फाइबोनैचि संख्या के अंतिम अंक को खोजने के लिए एक प्रोग्राम बनाना है।

समस्या का विवरण

हमें नौवें फिबोनाची संख्या का अंतिम अंक (यानी एलएसबी) खोजने की जरूरत है।

समस्या को समझने के लिए एक उदाहरण लेते हैं,

इनपुट:एन =120 आउटपुट:1

समाधान दृष्टिकोण

Nth पद ज्ञात करने के लिए एक सरल समाधान प्रत्यक्ष फाइबोनैचि सूत्र का उपयोग करना होगा। लेकिन यह विधि तब संभव नहीं होगी जब N एक बड़ी संख्या हो। तो इस बात को दूर करने के लिए हम Fibonacci Series के उस गुण का उपयोग करेंगे जो अंतिम अंक 60 पदों के बाद खुद को दोहराता है। अर्थात। 75वें पद का अंतिम अंक वही है जो 135वें पद का है।

इसका मतलब है कि 60 तक काम करने से हमें सभी संभावित संयोजन मिलेंगे और यह पता लगाने के लिए कि किस शब्द का उपयोग करना है, हम 60 के साथ संख्या का मॉड पाएंगे।

उदाहरण

#include
using namespace std;
long int fibo(int N){
   long int a=0,b=1,c;
   for(int i=2; i< N;i++) {
      c=a+b;
      a=b;
      b=c;
   }
   return c;
}
int findLastDigitNterm(int N) {
   N = N % 60;
   return ( fibo(N)%10);
}
int main() {
   int N = 683;
   cout<<"The last digit of "<<N<<"th Fibonacci term is "<<findLastDigitNterm(N);
   return 0;
}

आउटपुट

The last digit of 683th Fibonacci term is 1

  1. वह संख्या ज्ञात कीजिए जिसमें C++ में अंक d है

    विचार करें कि हमारे पास एक अंक d है, और ऊपरी सीमा n है। हमें उन सभी संख्याओं को खोजना है जिनमें d 0 से n तक की श्रेणी में है। तो अगर n =20, और अंक 3 है, तो संख्याएं [3, 13] होंगी। इस समस्या को हल करने के लिए, हम प्रत्येक संख्या को स्ट्रिंग के रूप में लेंगे, फिर यदि अंक स्ट्रिंग में मौजूद है, तो संख

  1. C++ प्रोग्राम ग्राफ़ में आर्टिक्यूलेशन पॉइंट्स की संख्या ज्ञात करने के लिए

    ग्राफ़ में आर्टिक्यूलेशन पॉइंट (या कट वर्टिस) एक बिंदु है यदि इसे हटा दिया जाता है (और इसके माध्यम से किनारों) ग्राफ़ को डिस्कनेक्ट करता है। डिस्कनेक्ट किए गए अप्रत्यक्ष ग्राफ़ के लिए एक अभिव्यक्ति बिंदु, एक शीर्ष हटाने वाला है जो कनेक्टेड घटकों की संख्या को बढ़ाता है। एल्गोरिदम Begin    W

  1. सी ++ प्रोग्राम एज डिसजॉइंट पथों की अधिकतम संख्या खोजने के लिए

    यह एक C++ प्रोग्राम है जो एज डिसजॉइंट पाथ की अधिकतम संख्या को खोजने के लिए है जिसका अर्थ है सबसे छोटा सबसेट पथ या दो कोने के बीच अधिकतम प्रवाह। एल्गोरिदम: Begin    function bfs() returns true if there is path from source s to sink t in    the residual graph which indicates additi