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

C++-এ দৈর্ঘ্য ও প্রস্থের মধ্যে ন্যূনতম পার্থক্যের সাথে আয়তক্ষেত্র


একটি আয়তক্ষেত্রের ক্ষেত্রফল দেওয়া থাকলে, দৈর্ঘ্য ও প্রস্থের মধ্যে পার্থক্য ন্যূনতম রাখতে পারি।

আয়তক্ষেত্রের ক্ষেত্রফল = দৈর্ঘ্য × প্রস্থ।

উদাহরণ

ইনপুট − ক্ষেত্রফল = 100

আউটপুট − ন্যূনতম পার্থক্যের সাথে আয়তক্ষেত্রের বাহু:

দৈর্ঘ্য = 10, প্রস্থ = 10

ব্যাখ্যা − ক্ষেত্রফল ১০০-এর বাহুগুলি: ২-৫০, ৪-২৫, ৫-২০, ১০-১০। ন্যূনতম পার্থক্য ১০-১০-এর মধ্যে (পার্থক্য = ০)। বর্গক্ষেত্র একটি আয়তক্ষেত্র যার সব বাহু সমান।

ইনপুট − ক্ষেত্রফল = 254

আউটপুট − ন্যূনতম পার্থক্যের সাথে আয়তক্ষেত্রের বাহু:

দৈর্ঘ্য = 127, প্রস্থ = ২

ব্যাখ্যা − ক্ষেত্রফল ২৫৪-এর জন্য একমাত্র সম্ভাব্য বাহু ১২৭ এবং ২।

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

ক্ষেত্রফলের বর্গমূল বের করে সেখান থেকে ১ পর্যন্ত লুপ চালাতে হবে যাতে পার্থক্য ন্যূনতম থাকে।

  • ইনপুট হিসেবে পূর্ণসংখ্যা ক্ষেত্রফল নিন।

  • rectangleSides(int area1) ফাংশন ক্ষেত্রফল গ্রহণ করে ন্যূনতম পার্থক্যের বাহু প্রিন্ট করে।

  • পূর্ণসংখ্যা length, breadth, tmp1 ঘোষণা করুন।

  • tmp1 = ceil(sqrt(area1)) সেট করুন।

  • for (int i = tmp1; i > 0; i--) লুপ চালান।

  • যদি (area1 % i == 0) হয়, তবে length = area1 / i এবং breadth = i সেট করুন।

  • break দিয়ে লুপ থামান।

  • বাহুগুলোর মান প্রিন্ট করুন।

উদাহরণ কোড

#include <bits/stdc++.h>
using namespace std;

void rectangleSides(int area1){
    int length, breadth;
    int tmp1 = ceil(sqrt(area1));
    for (int i = tmp1; i > 0; i--) {
        if (area1 % i == 0) {
            length = ceil(area1 / i);
            breadth = i;
            break;
        }
    }
    cout << "Sides of Rectangle with minimum difference :" << endl;
    cout << "Length = " << length << ", Breadth = " << breadth << endl;
}

int main(){
    int Area = 140;
    rectangleSides(Area);
    return 0;
}

আউটপুট

উপরের কোড রান করলে নিচের আউটপুট পাওয়া যাবে:

Sides of Rectangle with minimum difference : Length = 14, Breadth = 10
  1. C++-এ প্রিফিক্স (Prefix) এবং পোস্টফিক্স (Postfix) অপারেটরের পার্থক্য

  2. C++-এ cin এবং cout স্ট্রিমের পার্থক্য

  3. C++-এ ++i এবং i++ এর পার্থক্য

  4. C++-এ ডট (.) অপারেটর এবং -> (অ্যারো) অপারেটরের পার্থক্য