কম্পিউটার

সি প্রোগ্রামে বর্গমূল গণনার জন্য বাখশালী অনুমান


বাখশালী আনুমানিক একটি সংখ্যার বর্গমূল গণনা করার একটি পদ্ধতি যা একটি নিখুঁত বর্গ নয়। এখন, ধারণাটি সহজে বোঝার জন্য ব্রাশ-সম্পর্কিত পদগুলি চলুন।

একটি সংখ্যা x এর বর্গমূল হল একটি সংখ্যা যা নিম্নলিখিত শর্ত পূরণ করে, y 2 =x।

পারফেক্ট বর্গ হল এমন একটি সংখ্যা যার বর্গমূল হল w। উদাহরণস্বরূপ 16 হল নিখুঁত বর্গ কারণ এর মূল হল 4 এবং 4৷

একটি সংখ্যার বর্গমূল বের করার জন্য গাণিতিকভাবে সংজ্ঞায়িত একাধিক পদ্ধতি রয়েছে। এই টিউটোরিয়ালে, আমরা একটি সংখ্যার বর্গমূল বের করার জন্য বাখশালী অনুমান সম্পর্কে শিখতে যাচ্ছি।

এটি একটি সংখ্যার আনুমানিক মূল খুঁজে বের করার একটি পদ্ধতি। এটি বেবিলোনিয়ান পদ্ধতির প্রথম দুটি ধাপের সমতুল্য।

কাজ করছে -

বাখশালী অনুমান নিম্নলিখিত উপায়ে কাজ করে,

আমাদের একটি সংখ্যা s এর বর্গমূল বের করতে হবে . এই আনুমানিকতা খুঁজে বের করার জন্য যে ধাপগুলি এবং গণনা করা প্রয়োজন তা নীচে দেওয়া হল৷

  • s সংখ্যার নিকটতম নিখুঁত বর্গ খুঁজে বের করুন, যেমন n 2 .

  • সংখ্যা এবং নিকটতম নিখুঁত বর্গক্ষেত্রের পার্থক্য নির্ণয় করুন যেমন d =s - n 2 .

  • গণনা করুন, P =d/(2n)।

  • গণনা করুন, A =n + P.

  • s এর বর্গমূলের আনুমানিক মান হবে (A - P 2 / 2A) .

উদাহরণ

#include <iostream>
using namespace std;

int main(){
   float s = 12.3412;
   int perfectSqaure = 0;
   int n = 0;
   for (int i = static_cast<int>(s); i > 0; i--) {
      for (int j = 1; j<i; j++){
         if (j*j == i){
            perfectSqaure = i;
            n = j;
            break;
         }
      }
      if (perfectSqaure > 0)
      break;
   }
   float d = s - perfectSqaure;
   float P = d/(2.0*n);
   float A = n+P;
   float rootOfs = A-((P*P)/(2.0*A));
   cout<<"The square root of "<<s<<" = "<<rootOfs;
   return 0;
}

আউটপুট

The square root of 12.3412 = 3.51327

এখন এই আনুমানিক বর্গমূলটি 3.51300441 সহ প্রকৃত মূলের খুব কাছাকাছি। সুতরাং, প্রদত্ত সংখ্যার আনুমানিক বর্গমূল বের করার জন্য এই পদ্ধতিটি বেশ ভালো। কিছু জায়গায় এই পদ্ধতিটি সঠিক তাই আমরা এটিকে ফ্লোটিং পয়েন্টের মানের মূল খুঁজে পেতে ব্যবহার করতে পারি।


  1. দ্বিখণ্ডন পদ্ধতির জন্য C++ প্রোগ্রাম

  2. C++ এ বর্গক্ষেত্রের জন্য প্রোগ্রাম

  3. C++ এ পিরামিডের আয়তনের জন্য প্রোগ্রাম

  4. QuickSort-এর জন্য C++ প্রোগ্রাম?