#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
// ফাংশন সংজ্ঞা: f(x) = x^3 - x - 3
double f(double x) {
return pow(x, 3) - x - 3;
}
int main() {
double x1, x2, x3, f1, f2;
const double tolerance = 1e-6;
const int max_iterations = 100;
int iteration = 1;
// প্রাথমিক অনুমান গ্রহণ
cout << "x1 এর মান প্রবেশ করুন: ";
cin >> x1;
cout << "x2 এর মান প্রবেশ করুন: ";
cin >> x2;
cout << fixed << setprecision(6);
cout << "\nIteration\tx1\t\tx2\t\tx3\t\tf(x1)\t\tf(x2)\n";
while (iteration <= max_iterations) {
f1 = f(x1);
f2 = f(x2);
// বিভাজকের মান পরীক্ষা
if (fabs(f2 - f1) < 1e-12) {
cout << "বিভাজকের মান খুব ছোট। শূন্য দ্বারা বিভাজনের ঝুঁকি।\n";
break;
}
// পরবর্তী আনুমানিক মান গণনা
x3 = (f2 * x1 - f1 * x2) / (f2 - f1);
// বর্তমান পুনরাবৃত্তির ফলাফল প্রদর্শন
cout << iteration << "\t\t" << x1 << "\t" << x2 << "\t" << x3 << "\t" << f1 << "\t" << f2 << "\n";
// সঙ্গতি পরীক্ষা
if (fabs((x3 - x2) / x3) < tolerance) {
cout << "\nআনুমানিক মূল = " << x3 << endl;
break;
}
// পরবর্তী পুনরাবৃত্তির জন্য মান হালনাগাদ
x1 = x2;
x2 = x3;
iteration++;
}
if (iteration > max_iterations) {
cout << "সর্বাধিক পুনরাবৃত্তির মধ্যে সমাধানে পৌঁছানো যায়নি।\n";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDxpb21hbmlwPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCi8vIOCmq+CmvuCmguCmtuCmqCDgprjgpoLgppzgp43gpp7gpr46IGYoeCkgPSB4XjMgLSB4IC0gMwpkb3VibGUgZihkb3VibGUgeCkgewogICAgcmV0dXJuIHBvdyh4LCAzKSAtIHggLSAzOwp9CgppbnQgbWFpbigpIHsKICAgIGRvdWJsZSB4MSwgeDIsIHgzLCBmMSwgZjI7CiAgICBjb25zdCBkb3VibGUgdG9sZXJhbmNlID0gMWUtNjsKICAgIGNvbnN0IGludCBtYXhfaXRlcmF0aW9ucyA9IDEwMDsKICAgIGludCBpdGVyYXRpb24gPSAxOwoKICAgIC8vIOCmquCnjeCmsOCmvuCmpeCmruCmv+CmlSDgpoXgpqjgp4Hgpq7gpr7gpqgg4KaX4KeN4Kaw4Ka54KajCiAgICBjb3V0IDw8ICJ4MSDgpo/gprAg4Kau4Ka+4KaoIOCmquCnjeCmsOCmrOCnh+CmtiDgppXgprDgp4Hgpqg6ICI7CiAgICBjaW4gPj4geDE7CiAgICBjb3V0IDw8ICJ4MiDgpo/gprAg4Kau4Ka+4KaoIOCmquCnjeCmsOCmrOCnh+CmtiDgppXgprDgp4Hgpqg6ICI7CiAgICBjaW4gPj4geDI7CgogICAgY291dCA8PCBmaXhlZCA8PCBzZXRwcmVjaXNpb24oNik7CiAgICBjb3V0IDw8ICJcbkl0ZXJhdGlvblx0eDFcdFx0eDJcdFx0eDNcdFx0Zih4MSlcdFx0Zih4MilcbiI7CgogICAgd2hpbGUgKGl0ZXJhdGlvbiA8PSBtYXhfaXRlcmF0aW9ucykgewogICAgICAgIGYxID0gZih4MSk7CiAgICAgICAgZjIgPSBmKHgyKTsKCiAgICAgICAgLy8g4Kas4Ka/4Kat4Ka+4Kac4KaV4KeH4KawIOCmruCmvuCmqCDgpqrgprDgp4DgppXgp43gprfgpr4KICAgICAgICBpZiAoZmFicyhmMiAtIGYxKSA8IDFlLTEyKSB7CiAgICAgICAgICAgIGNvdXQgPDwgIuCmrOCmv+CmreCmvuCmnOCmleCnh+CmsCDgpq7gpr7gpqgg4KaW4KeB4KasIOCmm+Cni+Cmn+ClpCDgprbgp4Lgpqjgp43gpq8g4Kam4KeN4Kas4Ka+4Kaw4Ka+IOCmrOCmv+CmreCmvuCmnOCmqOCnh+CmsCDgpp3gp4HgpoHgppXgpr/gpaRcbiI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KCiAgICAgICAgLy8g4Kaq4Kaw4Kas4Kaw4KeN4Kak4KeAIOCmhuCmqOCngeCmruCmvuCmqOCmv+CmlSDgpq7gpr7gpqgg4KaX4Kaj4Kao4Ka+CiAgICAgICAgeDMgPSAoZjIgKiB4MSAtIGYxICogeDIpIC8gKGYyIC0gZjEpOwoKICAgICAgICAvLyDgpqzgprDgp43gpqTgpq7gpr7gpqgg4Kaq4KeB4Kao4Kaw4Ka+4Kas4KeD4Kak4KeN4Kak4Ka/4KawIOCmq+CmsuCmvuCmq+CmsiDgpqrgp43gprDgpqbgprDgp43gprbgpqgKICAgICAgICBjb3V0IDw8IGl0ZXJhdGlvbiA8PCAiXHRcdCIgPDwgeDEgPDwgIlx0IiA8PCB4MiA8PCAiXHQiIDw8IHgzIDw8ICJcdCIgPDwgZjEgPDwgIlx0IiA8PCBmMiA8PCAiXG4iOwoKICAgICAgICAvLyDgprjgppngp43gppfgpqTgpr8g4Kaq4Kaw4KeA4KaV4KeN4Ka34Ka+CiAgICAgICAgaWYgKGZhYnMoKHgzIC0geDIpIC8geDMpIDwgdG9sZXJhbmNlKSB7CiAgICAgICAgICAgIGNvdXQgPDwgIlxu4KaG4Kao4KeB4Kau4Ka+4Kao4Ka/4KaVIOCmruCnguCmsiA9ICIgPDwgeDMgPDwgZW5kbDsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQoKICAgICAgICAvLyDgpqrgprDgpqzgprDgp43gpqTgp4Ag4Kaq4KeB4Kao4Kaw4Ka+4Kas4KeD4Kak4KeN4Kak4Ka/4KawIOCmnOCmqOCnjeCmryDgpq7gpr7gpqgg4Ka54Ka+4Kay4Kao4Ka+4KaX4Ka+4KamCiAgICAgICAgeDEgPSB4MjsKICAgICAgICB4MiA9IHgzOwogICAgICAgIGl0ZXJhdGlvbisrOwogICAgfQoKICAgIGlmIChpdGVyYXRpb24gPiBtYXhfaXRlcmF0aW9ucykgewogICAgICAgIGNvdXQgPDwgIuCmuOCmsOCnjeCmrOCmvuCmp+Cmv+CmlSDgpqrgp4HgpqjgprDgpr7gpqzgp4PgpqTgp43gpqTgpr/gprAg4Kau4Kan4KeN4Kav4KeHIOCmuOCmruCmvuCmp+CmvuCmqOCnhyDgpqrgp4zgpoHgppvgpr7gpqjgp4sg4Kav4Ka+4Kef4Kao4Ka/4KWkXG4iOwogICAgfQoKICAgIHJldHVybiAwOwp9Cg==