النتائج 1 إلى 9 من 9

الموضوع: ايجاد الجذور التربيعية لمعادلة من الدرجة الثانية ب++c

  1. #1
    مهندس
    تاريخ التسجيل
    May 2006
    المشاركات
    3

    افتراضي ايجاد الجذور التربيعية لمعادلة من الدرجة الثانية ب++c

    السلام عليكم

     



    اولا : انا ضيف جديد عليكم ........ومنبهر من هذا المنتدى ومعجب به
    ثانيا: طالب مغترب في الاردن.............
    ثالثا: هناك مسالة وعليها 10 درجات اتمنى ان تساعدوني في ظرف هذا اليومين

    والمسالة كيف نجد الجذور التربيعية للمعادلة التربيعية من الدرجة الثانية
    x2+bx+c
    x تربيع وليس 2x
    اي انها تقرا x تربيع + c+bx

    الرجاء كتابة الكود ان استطعتم والكتابة
    بابسط الوسائل لانني في بداية التعلم اي في المستوى الثاني تقريبا
    ولكم جزيل الشكر

  2. #2
    من كبار أعضاء الموقع الصورة الرمزية منطلق بطموحي
    تاريخ التسجيل
    Apr 2005
    المشاركات
    891

    افتراضي

    السلام عليكم:

    اخي العزيز نحن لا نقدم حلول كاملة و لكن نستطيع مساعدتك بالحل و يمكنك عرض محاولاتك و سنعدل لك فيها

    بالنسبة لمعادلة الدرجة الثانية فتحتاج لفهم المبدأ الرياضي اولا كالتالي:
    كود:
    ax^2+bx+c=0
    
    delta=b^2 -4ac
    
    if delta=0 one solution only
    else
    if delta>0 two solutions
    else
    if delta<0 complex number solution
    اذن البرنامج سيحتاج لحساب delta في كل مرة فان كانت اقل من الصفر فلا يوجد حل في المجال الحقيقي فيطبع للمستخدم ( لا يوجد حل في المجال الحقيقي ) اما غير ذلم فان الحل له الصيغة التالية
    كود:
    X1=( -b+sqrt(delta) )/2a
    X2=(-b -sqrt(delta))/2a
    sqrt تعني الجذر التربيعي

    مساعدة:

    استعمل المكتبة

    كود:
    #include<cmath>
    لحساب قيمة الجذر التربيعي عن طريق الدالة sqrt(delta)

    اذن الخوازرمية كالتالي:

    1.قراءة قيم a و b و c من المستخدم
    2.حساب قيمة delta بناء على المعادلة
    3. اذا كانت اقل من الصفر نطبع "العملية مرفوضة "
    4.اذا كانت = صفر او اكبر من الصفر يتم حساب الجذور للمعادلة عن طريق معادلات x1 و x2 المذكورة اعلاه
    5.يتم طباعة النتيجة للمستخدم

  3. #3
    مهندس
    تاريخ التسجيل
    May 2006
    المشاركات
    3

    افتراضي

    السلام عليكم
    اخوي منطلق بطموحي

    ان اللسان ليعجز وان فمي ليتوقف عن الكلام اعجابا وتقديرا منك على هذه الخدمة
    وفقنا الله واياكم ............واتمنى ان ياتي اليوم الذي ارد لك فيه الجميل الف شكرا لك

  4. #4
    من كبار أعضاء الموقع الصورة الرمزية منطلق بطموحي
    تاريخ التسجيل
    Apr 2005
    المشاركات
    891

    افتراضي

    و عليكم السلام :

    أخي العزيز مهاجر ...العفو فلم افعل شيء ...

    و انا حاضر متى ما احتجت لمساعدة

    بالتوفيق

    :)

  5. #5
    مهندس
    تاريخ التسجيل
    May 2006
    المشاركات
    23

    السلام عليكم

    كتبت البرنامج وان شاء الله يكون صح
    ارجو تصحيح الخطأ ان وجد

    #include <iostream.h>
    #include <conio.h>
    #include <math.h>
    main()
    **
    float W,F,Q,a,I,b,c;
    cout<<"enter the value of a & b & c \n";
    cin>>a>>b>>c;
    I=pow(b,2)-4*a*c;
    Q=-b/(2*a);
    F=sqrt (I)/(2*a);
    W=sqrt (-I)/(2*a);
    if (I==0)
    cout<<"the root of equ.. are equal x=y = "<<Q,
    if (I>0)
    cout<<"the root of equ..are diff_real x = "<<Q+F<<"\ty= "<<Q-F;
    else
    cout <<"the root of equ..are diff_complex x = "<<Q<<"-i"<<W<<"\ty= "<<Q<<"+i"
    <<Q;
    getch();
    }
    المشكلة مش عارفة انقل النص صح
    اذا ممكن تقولولي
    شكرا

  6. #6
    من كبار أعضاء الموقع الصورة الرمزية منطلق بطموحي
    تاريخ التسجيل
    Apr 2005
    المشاركات
    891

    افتراضي

    السلام عليكم :

    الحل صحيح بارك الله بك ...و لكن عملت بعض التعديلات البسيطة

    1. لا داعي لاستخدام المكتبة conio فهي من لغة ال C و ليست C++
    2.حذف getch()
    3.استبدال .h ب using namespace std لاستفادة من خصائص ال C++

    كود:
    #include <iostream>
    
    #include <cmath>
    
    using namespace std;
    
    int main()
    **
    float W,F,Q,a,I,b,c;
    cout<<"enter the value of a & b & c \n";
    cin>>a>>b>>c;
    I=pow(b,2)-4*a*c;
    Q=-b/(2*a);
    F=sqrt (I)/(2*a);
    W=sqrt (-I)/(2*a);
    if (I==0)
    cout<<"the root of equ.. are equal x=y = "<<Q;
    if (I>0)
    cout<<"the root of equ..are diff_real x = "<<Q+F<<"\ty= "<<Q-F;
    if(I<0)
    cout <<"the root of equ..are diff_complex x = "<<Q<<"-i"<<W<<"\ty= "<<Q<<"+i"
    <<Q;
    cout<<endl;
    return 0;
    }
    بالنسبة لطريقة وضع الكود فقط قومي بنخسه من اي مكان كتبتيه و من ثم الصقيه هنا بالمنتدى ثم ظللي النص و اضغطي على رمز # تجدينه فوق مربع الكتابة

  7. #7
    مهندس
    تاريخ التسجيل
    May 2006
    المشاركات
    23

    افتراضي الله يبارك فيكم على الجهود

    بس المشكلة البرنامج متعرفش عندي عالدوال المكتبية بهذه الهيئة يعني لازم زي مأنا كتباها
    احتمال نسخة البرنامج تختلف
    عالعموم انا بدي موقع انزل منو البرنامج
    وبالنسبة للاجابة الثانية جربت احدد واعمل # زي مقولت بس منفعش

  8. #8
    مهندس
    تاريخ التسجيل
    Apr 2006
    المشاركات
    33

    افتراضي

    السلام عليكم
    اختي عبير
    ردا على سؤالك الثاني اول شي لازم تذهبين الى لوحة التحكم الخاصة
    بالاعضاء بعدين اختاري (تعديل الخيارات) ستجدين هناك العديد من الخيارات
    يوجد منها الخيارات الخاصة بواجهة محرر النصوص >> اختاري الواجهة
    المتطورة المرتبطة لمحرر النصوص .
    اذا قمت بهذا ستضاف الى ردودك القدرة على وضع الكود بالطريقة التي
    تريدين باختيار # فوق مربع الكتابه كما قال لك اخي منطلق بطموحي
    سيظهر لك[.code.]*[/code] الصقي الكود مكان النجمه
    ...... :)

  9. #9
    مهندس
    تاريخ التسجيل
    May 2006
    المشاركات
    23

    السلام عليكم

    شكرا لك اختي وجدان

المفضلات

المفضلات

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •