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

C++ প্রোগ্রাম কোল্যাটজ কাঞ্চার (Collatz Conjecture) ইমপ্লিমেন্টেশন


এই টিউটোরিয়ালে আমরা কোল্যাটজ কাঞ্চার (Collatz Conjecture) ইমপ্লিমেন্টেশন সম্পর্কে আলোচনা করব।

এখানে একটি সংখ্যা n দেওয়া থাকবে এবং আমাদের বের করতে হবে সেটি কি দুটি অপারেশন ব্যবহার করে ১-এ রূপান্তরিত হতে পারে:

  • যদি n জোড় (even) হয়, n হবে n/2
  • যদি n বিজোড় (odd) হয়, n হবে 3*n + 1

উদাহরণ

#include<bits/stdc++.h> using namespace std; //checking if n reaches to 1 or not bool check1(int n, unordered_set<int> &s){    if (n == 1)       return true;    if (s.find(n) != s.end())       return false;    return (n % 2)? check1(3*n + 1, s) :       check1(n/2, s); } bool if_one(int n){    unordered_set<int> s;    return check1(n, s); } int main(){    int n = 234;    if_one(n) ? cout << "Yes" : cout <<"No";    return 0; }

আউটপুট

Yes

  1. C++ প্রোগ্রাম: সিলেকশন সর্ট বাস্তবায়ন

  2. C++ প্রোগ্রাম: হিপ সর্ট বাস্তবায়ন

  3. C++ প্রোগ্রাম: বাবল সর্ট বাস্তবায়ন

  4. C++ প্রোগ্রাম: র‍্যাডিক্স সর্ট বাস্তবায়ন