Skip to main content

newton raphson method


  ///Bismillahir Rahmanir Rahim

///Author:Tanvir Ahmmad
///CSE,Islamic University,Bangladesh

#include<iostream>
using namespace std;

double fun_1(double num)
{
    return ((num*num)-(4*num)-7);
}

double deri_fun_1(double num)
{
    return ((2*num)-4);
}

int main()
{
    char ch = 253;
    double num,brk_limit;
    int step,cas=1;
    cout<<"Given equation : "<<"X"<<ch<<"-4X-7"<<endl;
    cout<<"       f(x)=X"<<ch<<"-4X-7"<<endl;
    cout<<"      f'(x)=2X-4"<<endl;
    cout<<"Please enter an inter initial guess : ";
    while(1)
    {
        cin>>num;
        if(num>5) cout<<"Please enter a lower number : ";
        else if(num==5)
        {
            cout<<"You picked a right number.Let x0="<<num<<endl;
            break;
        }
        else cout<<"Please enter a upper number : ";

    }
    cout<<"Please enter minimum number of step if you want to do : ";
    cin>>step;
    int j=step;
    cout<<"Please enter a break down limit : ";
    cin>>brk_limit;

    while(step--)
    {
        num=(num-(fun_1(num)/deri_fun_1(num)));
        cout<<"X"<<cas++<<" : "<<num<<endl;
        if(abs(fun_1(num))<=brk_limit)
        {
            cout<<"Answer of "<<"X"<<ch<<"-4X-7 using The Newton-Raphson Method : "<<num<<endl;
            break;
        }
    }

    if(step==(-1))
        cout<<"Answer of "<<"X"<<ch<<"-4X-7 after "<<j<<" step using The Newton-Raphson Method : "<<num<<endl;
    return 0;
}



///Alhamdulillah


Comments

Popular posts from this blog

Codeforces round 1676(A. Lucky?)

Just count the  first three  &  last three  number ///Bismillahir Rahmanir Rahim ///Author: Tanvir Ahmmad ///CSE,Islamic University,Bangladesh #include< iostream > #include< cstdio > #include< algorithm > #include< string > #include< cstring > #include< sstream > #include< cmath > #include< cstring > #include< vector > #include< queue > #include< map > #include< set > #include< stack > #include< vector > #include< iterator > #include   < functional >   ///sort(arr,arr+n,greater<int>()) for decrement of array /*every external angle sum=360 degree   angle find using polygon hand(n) ((n-2)*180)/n*/ ///Floor[Log(b)  N] + 1 = the number of digits when any number is repres...

Codeforces round 1661(B. Getting Zero)

using   second operation  the answer is maximum is  15  because  2 15 =32768 so we need to  pre-calculate all the illegible input 0 to 32768   using  second operation Then  just increment 1(using first operation)  from input check is it  minimum is not ! ///Bismillahir Rahmanir Rahim ///Author: Tanvir Ahmmad ///CSE,Islamic University,Bangladesh #include< iostream > #include< cstdio > #include< algorithm > #include< string > #include< cstring > #include< sstream > #include< cmath > #include< cstring > #include< vector > #include< queue > #include< map > #include< set > #include< stack > #include< vector > #include< iterator > #include   < functional >   ///sort(arr,arr+n,greater<int...

Codeforces round 1676(E. Eating Queries)

Just use the lower bound & check is it greater than the sum or not Lower bound:https://www.geeksforgeeks.org/upper_bound-and-lower_bound- for -vector- in -cpp-stl/ ///Bismillahir Rahmanir Rahim ///Author: Tanvir Ahmmad ///CSE,Islamic University,Bangladesh #include< iostream > #include< cstdio > #include< algorithm > #include< string > #include< cstring > #include< sstream > #include< cmath > #include< cstring > #include< vector > #include< queue > #include< map > #include< set > #include< stack > #include< vector > #include< iterator > #include   < functional >   ///sort(arr,arr+n,greater<int>()) for decrement of array /*every external angle sum=360 degree   angle find using polygon hand(n) ((n-2)*180...