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

C++-এ বৃত্তে ডায়ামেট্রিক্যালি অপোজিট পজিশনে থাকা ব্যক্তির অবস্থান


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

উদাহরণ:

ইনপুট - N = 6, M = 3

আউটপুট - 6

ব্যাখ্যা -

C++-এ বৃত্তে ডায়ামেট্রিক্যালি অপোজিট পজিশনে থাকা ব্যক্তির অবস্থান

সমাধানের জন্য, দুটি কেস হবে: একটি যদি পজিশন আধা পজিশনের চেয়ে বড় হয় (দ্বিতীয় অর্ধেক), তবে বিপরীত পজিশন হবে প্রথম অর্ধেকে এবং বিপরীতভাবে।

গাণিতিকভাবে সূত্র তৈরি করি:

কেস ১ - যদি m > n/2 হয়, তবে বিপরীত ব্যক্তির পজিশন = m - (n/2)

কেস ২ - যদি m ≤ n/2 হয়, তবে বিপরীত ব্যক্তির পজিশন = m + (n/2)

উদাহরণ

সমাধানের প্রোগ্রাম:

#include <iostream> 
using namespace std; 

void printOppositePosition(int n, int m) {
    int pos;
    if (m > (n / 2))
        pos = (m - (n / 2));
    else
        pos = (m + (n / 2));
    cout << pos;
}

int main() {
    int N = 8, M = 4;
    cout << "The position of person opposite to person at position " << M << " when " << N << " people are standing in a circle is ";
    printOppositePosition(N, M);
    return 0;
}

আউটপুট

The position of person opposite to person at position 4 when 8 people are standing in a circle is 8

  1. বৃত্ত ও আয়ত ওভারল্যাপ চেক করা C++-এ

  2. N কাটা দিয়ে বৃত্তের টুকরোর সংখ্যা গণনা C++-এ

  3. C++-এ T সেকেন্ড পর একটি মেঢোর অবস্থান

  4. C++-এ বর্গের পরিবেষ্টিত বৃত্তের ক্ষেত্রফল