কম্পিউটার টিউটোরিয়াল

C++-এ Nth ফিবোনাচ্চি সংখ্যার শেষ অঙ্ক বের করার প্রোগ্রাম


এই সমস্যায়, আমাদের একটি সংখ্যা N দেওয়া হয়েছে। আমাদের কাজ হল Nth ফিবোনাচ্চি সংখ্যার শেষ অঙ্ক বের করার প্রোগ্রাম তৈরি করা C++-এ।

সমস্যা বিবরণ

আমাদের Nth ফিবোনাচ্চি সংখ্যার শেষ অঙ্ক (অর্থাৎ LSB) বের করতে হবে।

একটি উদাহরণ নিয়ে সমস্যাটি বুঝি,

ইনপুট: N = 120 আউটপুট: 1

সমাধান পদ্ধতি

একটি সহজ সমাধান হবে সরাসরি ফিবোনাচ্চি সূত্র ব্যবহার করে Nth পদ বের করা। কিন্তু এই পদ্ধতি বড় সংখ্যার জন্য সম্ভব নয়। এটাকে অতিক্রম করতে, আমরা ফিবোনাচ্চি সিরিজের বৈশিষ্ট্য ব্যবহার করব যে শেষ অঙ্ক ৬০ পদ পর পুনরাবৃত্তি হয়। অর্থাৎ ৭৫তম পদের শেষ অঙ্ক ১৩৫তম পদের সাথে একই।

এটি বোঝায় ৬০ পর্যন্ত কাজ করলে সব সম্ভাব্য কম্বিনেশন পাব এবং কোন পদটি ব্যবহার করতে হবে তা বের করার জন্য সংখ্যার ৬০ দিয়ে মড বের করব।

উদাহরণ

#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++-তে

  2. সি++ প্রোগ্রাম: নির্দিষ্ট অঙ্ক d ধারণকারী সংখ্যাগুলো খুঁজে বের করা

  3. C++ প্রোগ্রাম: গ্রাফে আর্টিকুলেশন পয়েন্ট (Articulation Points) গণনা করা

  4. সি++ প্রোগ্রাম: সর্বোচ্চ এজ-ডিসজয়েন্ট পাথ (Maximum Number of Edge Disjoint Paths) বের করা