কম্পিউটার

C++ এ 75% বজায় রাখতে উপস্থিত থাকার জন্য ন্যূনতম সংখ্যক বক্তৃতা খুঁজে বের করার প্রোগ্রাম


এই সমস্যায়, আমাদের দুটি সংখ্যা M এবং N দেওয়া হয়েছে যা বর্তমান ডেটা পর্যন্ত অনুষ্ঠিত ক্লাসের মোট সংখ্যা এবং শিক্ষার্থী দ্বারা যথাক্রমে অংশগ্রহণকারী ক্লাসের সংখ্যা নির্দেশ করে। আমাদের কাজ হল C++ এ 75% বজায় রাখার জন্য ন্যূনতম সংখ্যক বক্তৃতা খুঁজে বের করার জন্য একটি প্রোগ্রাম তৈরি করা।

সমস্যা বর্ণনা

এটি 75% শতাংশ উপস্থিতি বজায় রাখা কলেজ ছাত্রদের সবচেয়ে বড় উদ্বেগের একটি। এই প্রোগ্রামটি 75% উপস্থিতি পেতে ছাত্রকে নিয়মিত অংশগ্রহণ করতে হবে এমন ন্যূনতম লেকচারের সংখ্যা গণনা করে৷

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

উদাহরণ 1

ইনপুট :M =32, N =20

আউটপুট :১৬

ব্যাখ্যা

ন্যূনতম 75% উপস্থিতি অর্জনের জন্য শিক্ষার্থীকে কমপক্ষে 16টি লেকচারে উপস্থিত থাকতে হবে। এটি মোট বক্তৃতা 48 এবং উপস্থিত বক্তৃতা 36 করবে।

শতাংশ =36*100/48 =75%

উদাহরণ 1

ইনপুট :M =14, N =4

আউটপুট :26

ব্যাখ্যা

ন্যূনতম 75% উপস্থিতি অর্জনের জন্য শিক্ষার্থীকে কমপক্ষে 26টি লেকচারে উপস্থিত থাকতে হবে। এটি মোট বক্তৃতা 40 এবং উপস্থিত বক্তৃতা 30 করে দেবে।

শতাংশ =30*100/40 =75%

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

এখানে, আমাদের শিক্ষার্থীর উপস্থিতির জন্য প্রয়োজনীয় লেকচারের সংখ্যা খুঁজে বের করতে হবে। একটি সহজ উপায় হল উভয় দিকে একটি বক্তৃতা যোগ করা এবং যখন বিভাগ 0.75 বা তার বেশি হয় তখন যোগ করা বন্ধ করুন এবং পুনরাবৃত্তিকারীর মান ফেরত দিন।

আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম,

উদাহরণ

#include <iostream>
using namespace std;
int maintainAtt(int M, int N) {
   int att = 0; while(1){
      if(((N+att)*100)/(M+att) >= 75){
         return att;
      }
      att++;
   }
}
int main() {
   int M = 23, N = 12;
   cout<<"The total number of lectures to be attended is "<<maintainAtt(M, N);
   return 0;
}

আউটপুট−

The total number of lectures to be attended is 21

এই পদ্ধতিটি একটি লুপ ব্যবহার করে যা O(n) অর্ডারের সমাধানের সময় জটিলতা তৈরি করে। কিন্তু আমরা গণনার জন্য গাণিতিক সূত্র ব্যবহার করে O(1) সময়ের জটিলতায় এটি করতে পারি।

75% উপস্থিতি বজায় রাখতে ন্যূনতম লেকচারে উপস্থিত থাকার সূত্র হল

$$\square\square\square\square\left(\frac{(0.75)+\square-\square}{0.25}\right)$$

আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম,

উদাহরণ

#include <iostream>
#include <math.h>
using namespace std;
int maintainAtt(int M, int N) {
   int att = ceil(((0.75*M) - N)/(0.25)); return att;
}
int main() {
   int M = 30, N = 11;
   cout<<"The total number of lectures to be attended is "<<maintainAtt(M, N);
   return 0;
}

আউটপুট

The total number of lectures to be attended is 46

  1. C++ এ প্রতিপক্ষকে ধরার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক ধাপ খুঁজে বের করার প্রোগ্রাম

  2. C++ ব্যবহার করে সংখ্যার ন্যূনতম যোগফল নির্ণয় করুন।

  3. দক্ষতার সাথে একটি সংখ্যার সমতা খুঁজে পেতে C++ প্রোগ্রাম

  4. C++ প্রোগ্রামে একটি সংখ্যার জোড় গুণনীয়কের যোগফল বের করতে?