#include <iostream> #include <iomanip> #include <cmath> using namespace std; double f(double x) { return x*x*x - x - 3; } double f_prime(double x) { return 3*x*x - 1; } int main() { double x0, E, true_root; cout << "NEWTON-RAPHSON METHOD" << endl; cout << "f(x) = x³ - x - 3" << endl; cout << "f'(x) = 3x² - 1" << endl; cout << "INITIAL X0: "; cin >> x0; cout << "ENTER TOLERANCE E: "; cin >> E; cout << "ENTER TRUE ROOT (for error calculation): "; cin >> true_root; double x1, fx0, fpx0, error, percent_error; int iteration = 0; cout << fixed << setprecision(6); cout << "\n*" << endl; cout << "ITERATION\tX0\t\tf(X0)\t\tf'(X0)\t\tX1\t\tError\t\t% Error" << endl; cout << "*" << endl; do { fx0 = f(x0); fpx0 = f_prime(x0); x1 = x0 - fx0 / fpx0; error = fabs(x1 - true_root); percent_error = (error / true_root) * 100; iteration++; cout << iteration << "\t\t" << x0 << "\t" << fx0 << "\t" << fpx0 << "\t" << x1 << "\t" << error << "\t" << percent_error << endl; if (fabs((x1 - x0) / x1) < E) break; x0 = x1; } while (iteration < 100); cout << "*" << endl; cout << "THE ROOT OF EQUATION IS " << x1 << endl; return 0; }
Standard input is empty
NEWTON-RAPHSON METHOD f(x) = x³ - x - 3 f'(x) = 3x² - 1 INITIAL X0: ENTER TOLERANCE E: ENTER TRUE ROOT (for error calculation): * ITERATION X0 f(X0) f'(X0) X1 Error % Error * 1 0.000000 -3.000000 -1.000000 -3.000000 3.000000 inf 2 -3.000000 -27.000000 26.000000 -1.961538 1.961538 inf 3 -1.961538 -8.585742 10.542899 -1.147176 1.147176 inf 4 -1.147176 -3.362522 2.948038 -0.006579 0.006579 inf 5 -0.006579 -2.993421 -0.999870 -3.000389 3.000389 inf 6 -3.000389 -27.010117 26.007004 -1.961818 1.961818 inf 7 -1.961818 -8.588691 10.546192 -1.147430 1.147430 inf 8 -1.147430 -3.363272 2.949788 -0.007256 0.007256 inf 9 -0.007256 -2.992744 -0.999842 -3.000473 3.000473 inf 10 -3.000473 -27.012305 26.008518 -1.961879 1.961879 inf 11 -1.961879 -8.589329 10.546903 -1.147485 1.147485 inf 12 -1.147485 -3.363434 2.950167 -0.007403 0.007403 inf 13 -0.007403 -2.992598 -0.999836 -3.000492 3.000492 inf 14 -3.000492 -27.012806 26.008865 -1.961892 1.961892 inf 15 -1.961892 -8.589475 10.547066 -1.147498 1.147498 inf 16 -1.147498 -3.363471 2.950253 -0.007436 0.007436 inf 17 -0.007436 -2.992564 -0.999834 -3.000497 3.000497 inf 18 -3.000497 -27.012922 26.008945 -1.961896 1.961896 inf 19 -1.961896 -8.589509 10.547104 -1.147501 1.147501 inf 20 -1.147501 -3.363480 2.950273 -0.007444 0.007444 inf 21 -0.007444 -2.992557 -0.999834 -3.000498 3.000498 inf 22 -3.000498 -27.012949 26.008964 -1.961896 1.961896 inf 23 -1.961896 -8.589517 10.547113 -1.147501 1.147501 inf 24 -1.147501 -3.363482 2.950278 -0.007446 0.007446 inf 25 -0.007446 -2.992555 -0.999834 -3.000498 3.000498 inf 26 -3.000498 -27.012955 26.008968 -1.961897 1.961897 inf 27 -1.961897 -8.589519 10.547115 -1.147502 1.147502 inf 28 -1.147502 -3.363482 2.950279 -0.007446 0.007446 inf 29 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 30 -3.000498 -27.012956 26.008969 -1.961897 1.961897 inf 31 -1.961897 -8.589519 10.547115 -1.147502 1.147502 inf 32 -1.147502 -3.363482 2.950279 -0.007446 0.007446 inf 33 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 34 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 35 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 36 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 37 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 38 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 39 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 40 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 41 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 42 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 43 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 44 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 45 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 46 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 47 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 48 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 49 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 50 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 51 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 52 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 53 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 54 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 55 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 56 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 57 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 58 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 59 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 60 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 61 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 62 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 63 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 64 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 65 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 66 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 67 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 68 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 69 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 70 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 71 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 72 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 73 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 74 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 75 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 76 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 77 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 78 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 79 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 80 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 81 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 82 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 83 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 84 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 85 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 86 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 87 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 88 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 89 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 90 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 91 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 92 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 93 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 94 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 95 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 96 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf 97 -0.007446 -2.992554 -0.999834 -3.000498 3.000498 inf 98 -3.000498 -27.012957 26.008969 -1.961897 1.961897 inf 99 -1.961897 -8.589519 10.547116 -1.147502 1.147502 inf 100 -1.147502 -3.363482 2.950280 -0.007446 0.007446 inf * THE ROOT OF EQUATION IS -0.007446