কম্পিউটার

সর্বাধিক সংখ্যা যা C++ এ N সেগমেন্ট ব্যবহার করে সেভেন সেগমেন্ট ডিসপ্লেতে প্রদর্শিত হতে পারে


প্রদত্ত টাস্ক হল সাতটি সেগমেন্ট ডিসপ্লেতে এন সেগমেন্ট ব্যবহার করে সর্বাধিক সংখ্যা খুঁজে বের করা।

আসুন এখন বুঝতে পারি একটি উদাহরণ ব্যবহার করে আমাদের কী করতে হবে −

ইনপুট − N=5

আউটপুট − 71

ব্যাখ্যা

সাতটি সেগমেন্টের ডিসপ্লেতে সবচেয়ে বড় সংখ্যাটি নিম্নরূপ প্রদর্শিত হবে

সর্বাধিক সংখ্যা যা C++ এ N সেগমেন্ট ব্যবহার করে সেভেন সেগমেন্ট ডিসপ্লেতে প্রদর্শিত হতে পারে

ইনপুট − N=6

আউটপুট − 111

সর্বাধিক সংখ্যা যা C++ এ N সেগমেন্ট ব্যবহার করে সেভেন সেগমেন্ট ডিসপ্লেতে প্রদর্শিত হতে পারে

নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • নিম্নলিখিত পরিস্থিতিকে 3টি ক্ষেত্রে ভাগ করা যায় -

    • কেস 1

      যদি N 0 বা 1 হয়, তাহলে কোন সংখ্যা প্রদর্শন করা সম্ভব নয়।

    • কেস 2

      যদি N বিজোড় হয়। তারপরে বিজোড় সংখ্যক সেগমেন্টের সাথে যে সংখ্যাগুলি প্রদর্শিত হতে পারে তা হল 2, 3, 5, 7 এবং 8 যার মধ্যে 7টি সর্বনিম্ন সংখ্যক সেগমেন্ট নেয়, অর্থাৎ 3। তাই এই ক্ষেত্রে 7 হল সবচেয়ে উল্লেখযোগ্য সংখ্যা৷

    • কেস 3

      যদি N জোড় হয়। তারপরে বিজোড় সংখ্যক সেগমেন্টের সাথে যে সংখ্যাগুলি প্রদর্শিত হতে পারে তা হল 0, 1, 4, 6, 9 এবং 8 যার মধ্যে 1টি সর্বনিম্ন সংখ্যক সেগমেন্ট নেয়, অর্থাৎ 2। তাই এই ক্ষেত্রে 1 হল সবচেয়ে উল্লেখযোগ্য সংখ্যা। .

  • ফাংশনে MaxNumber() প্রথমে

    ব্যবহার করে বেস কন্ডিশন চেক করুন

    যদি (N ==1 || N ==0)

  • তারপর আরেকটি if স্টেটমেন্ট ব্যবহার করে, N জোড় কিনা তা পরীক্ষা করুন। যদি তাই হয় তাহলে "1" প্রিন্ট করুন কারণ এটি জোড় ক্ষেত্রে সবচেয়ে গুরুত্বপূর্ণ সংখ্যা এবং MaxNumber(N - 2) কল করুন কারণ এখানে 2টি সেগমেন্ট ব্যবহার করা হচ্ছে।

  • N বিজোড় কিনা তা পরীক্ষা করতে অন্য if স্টেটমেন্ট ব্যবহার করুন। যদি তাই হয় তাহলে "7" প্রিন্ট করুন কারণ এটি বিজোড় ক্ষেত্রে সবচেয়ে উল্লেখযোগ্য সংখ্যা এবং MaxNumber(N - 3) কল করুন কারণ এখানে 3টি সেগমেন্ট ব্যবহার করা হচ্ছে।

উদাহরণ

#include <iostream>
using namespace std;
void MaxNumber(int N){
   //Condition to check base case
   if (N == 1 || N == 0){
      return;
   }
   //If the number is even
   if (N % 2 == 0){
      cout << "1";
      MaxNumber(N - 2);
   }
   //If the number is odd
   else if (N % 2 == 1){
      cout << "7";
      MaxNumber(N - 3);
   }
}
//Main function
int main(){
   int N;
   N = 5;
   MaxNumber(N);
   return 0;
}

আউটপুট

আমরা উপরের কোডটি চালালে আমরা নিম্নলিখিত আউটপুট পাব −

71

  1. সর্বাধিক বিশপ যা C++ এ N*N চেসবোর্ডে স্থাপন করা যেতে পারে

  2. সর্বাধিক পার্থক্য উপাদান যা C++ এ একটি সেটে যোগ করতে পারে

  3. C++ এ সমকোণ সমদ্বিবাহু ত্রিভুজে ফিট হতে পারে এমন সর্বাধিক সংখ্যক বর্গক্ষেত্র

  4. পাইথনে নেতৃত্বাধীন সাতটি সেগমেন্ট ব্যবহার করে সংখ্যাটি প্রদর্শন করা যায় কিনা তা পরীক্ষা করুন