تابعنا علي الفيس بوك

أعلان الهيدر

الاثنين، 15 ديسمبر 2014

الرئيسية طريقة نيوتن رافسون-مبادئ التحليل العددي-كود-++C

طريقة نيوتن رافسون-مبادئ التحليل العددي-كود-++C


السلام عليكم ورحمة الله وبركاتة اقدم لكم اعزائي كود لطريقة  طريقة نيوتن رافسون (مبادئ التحليل العددي ) مرفق ايضاً البرنامج في الاسفل مكتوب ، لاسهل عليكم عناء كتابتة من جديد ، وسارفق لكم كود في المدونة .


طريقة نيوتن : هي من طرق النقطة الثابتة ولكنها ذات تقارب غير خطي ويمكن التوصل اليها تحليليا بالاسلوب التالي : 0 = (f(x ، افرض ان a جذر لها علماً بأن هذا الجذر غير معروف سلفاً .


=====================================
طريقة تشغيل البرنامج على ويندوز 7 و 8 و 8.1 وفيستا
=====================================
=====================================
=====================================
=====================================
=====================================
الكود 
#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;
double f(double x) //for the function x^4 - 10
{
       return ((pow(2.71,x)+3*x));
}

double ff(double x) //Differentiating function f(x)
{
    return ((pow(2.71,x)+3));
}

void NR(double aerr, int maxitr, double a)
{
     int i = 0;
     double b, prev;
     while (i <= maxitr)
     {
           b = a - (f(a))/ff(a);
           cout << "aerr : " << i << ": x = " << b << endl;
           i++;
           if (fabs(b - a) < aerr)
              break;
           a = b;
     }
}

int main()
{
    double aerr, a, b;
    int maxitr;
    cout << "Enter aerr(deka matloba), maxitr(ktwat add), a(abtade3eee)." << endl;
    cin >> aerr;
    cin >> maxitr;
    cin >> a;
    NR(aerr, maxitr, a);
   


    system("PAUSE");
    return EXIT_SUCCESS;
}

=====================================
قم بنسخ الكود ولصقة داخل البرنامج ونفذه 
بالتوفيق للجميع 
=====================================
(pow(2.71,x)  تعني e مرفوعة للقوة X

(double f(double x تعني الاقتران الاصلي ( نضع بها الاقتران الاصلي ) ونضع الاقتران داخل الجزء الاحمر 
      return ((pow(2.71,x)+3*x));

(double ff(double x تعني مشتقة الاقتران الاصلي  نقوم باشتقاق الاقتران ونضعة داخل الجزء الاحمر 

  return ((pow(2.71,x)+3));

=====================================
المرفقات 
امتداد الملف هو cpp والاصدار المستخدام ( Dev c++ 4 

=============================
يا رضى الله ورضى الوالدين
بالتوفيق للجميع
الكاتب : حسام زكارنة




ليست هناك تعليقات:

إرسال تعليق

متابعة

يتم التشغيل بواسطة Blogger.