Warning: Only variables should be passed by reference in ..../includes/class_postbit.php(345) : eval()'d code(371) : runtime-created function on line 1
البرمجة - الخوارزميات

 

الملاحظات
صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 10 من 20

الموضوع: البرمجة - الخوارزميات

السلام عليكم: بدايةً أود أن أقول أني ترددت قليلاً في وضع هذه المشاركة في ملتقى المهندسين المدنيين لأنها تخص جميع المهندسين، ولكن لكوني مهندساً مدنياً وسيكون تواصلي مع

  1. #1 البرمجة - الخوارزميات 
    تاريخ التسجيل
    Aug 2006
    المشاركات
    507
    Thumbs Up
    Received: 5
    Given: 0

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

    بدايةً أود أن أقول أني ترددت قليلاً في وضع هذه المشاركة في ملتقى المهندسين المدنيين لأنها تخص جميع المهندسين، ولكن لكوني مهندساً مدنياً وسيكون تواصلي مع المهندسين المدنيين أكثر لذلك آثرت وضعها هنا، ولكن يبقى للمشرفين القرار النهائي في ترتيب المواضيع.
    وقد تكون هذه المشاركة بداية لمجموعة من المشاركات الأخرى إن سمح الوقت لها وهي تتحدث عن الخوارزميات.

    لماذا اخترت الخوارزميات:
    نظراً لكثرة الدروس الخاصة بلغات البرمجة على الإنترنت ونظراً لوجود العديد من المهندسين الخبراء في هذا الملتقى الذين يمكنهم المساعدة في مجال الهندسة المدنية فقررت وضع مجموعة من المشاركات تفيد المهندس المدني في مجال البرمجة (إن شاء الله وإن سمح الوقت بذلك وقد تكون على فترات متباعدة) وهي عن كيفية الاستفادة من لغات البرمجة في عمل برامج هندسية.
    أي لن أتطرق إلى شرح لغات البرمجة أو الأوامر البرمجية بشكل مفصل، فقد يكون في ملتقى هندسة الحاسب الآلي من هو أفضل مني في هذا، ولكن سأتطرق إلى شرح بعض الخوارزميات المهمة في مجال الرياضيات العددية والتي غالباً ما يصادفها المهندس أثناء البرمجة.

    ماذا أقصد بالرياضيات العددية:
    توجد مجموعة من المسائل الرياضية المعقدة لا يمكن حلها يدوياً أحياناً أو أنها تتطلب مجهوداً كبيراً لحلها تحليليياً مثل تكامل تابع معقد أو حل معادلة تفاضلية من درجة كبيرة أو حل مجموعة 500 معادلة خطية ب 500 مجهول، لذلك نلجأ إلى حلها تقريبياً أي إيجاد طرق رياضية (خوارزميات) تعطي جواباً قريباً جداً من الدقة بواسطة التقريب المتتالي وهو مايسمى بالرياضيات العددية.

    ما هي الخوارزميات:
    يمكن تعريف الخوارزمية بأنها مجموعة منتهية من التعليمات خالية من الغموض يتم بتطبيقها خطوة خطوة إنجاز مهمة محددة.
    يعود اسم الخوارزمية إلى عالم الرياضيات محمد بن موسى الخوارزمي الذي ابتكر مفهوم الخوارزمية وهو عالم مسلم أصله من خوارزم في خراسان.
    تستخدم الخوارزميات بشكل كبير في هذه الأيام وبشكل خاص في برامج الحاسوب، المصطلح الإنكليزي المقابل لكلمة خوارزمية هو Algorithm.

    مثال عن خوارزمية (إيجاد جذور معادلة من الدرجة الثانية):
    كلنا يعلم طريقة حل معادلة من الدرجة الثانية وهي من أبسط الخوارزميات في الرياضيات العددية، ولكن سأشرحها كمثال (مع العلم أنها تعتبر طريقة دقيقة وليست تقريبية)

    1- نعيد ترتيب المعادلة لتصبح من الشكل:
    ax^2+bx+c=0
    حيث x هو المتحول و a,b,c ثوابت المعادلة.

    2- نحسب delta من المعادلة:
    delta=b^2-4ac






    3- نختبر قيمة delta:
    - إذا كانت delta أصغر من الصفر فليس للمعادلة جذور حقيقية (يمكن أن نتابع لإيجاد الجذور العقدية ولكن ليس هذا مجاله)
    - أما إذا كانت delta = 0 فإن للمعادلة جذر مضاعف يحسب من العلاقة:
    x1=x2=-b/2a



    - أما إذا كانت delta > 0 فإن للمعادلة جذران حقيقيان يحسبان من العلاقة.

    x1=(-b-sqr(delta)) / 2a
    x2=(-b+sqr(delta)) / 2a

    حيث أن sqr يشير إلى الجذر التربيعي في لغة Visual Basic.

    باتباعنا للخطوات السابقة أو الخوارزمية السابقة نستطيع حل معادلة من الدرجة الثانية

    وكما نلاحظ:
    1- الخوارزمية يجب أن تكون واضحة وخالية من التعقيد.
    2- يجب وجود قيم ابتدائية للخوارزمية وهي هنا ثوابت المعادلة a,b,c

    يمكن كتابة برنامج بلغة فيجيوال بيسيك (في المرفق) لحل هذه المعادلة (يمكن تحويله بسهولة إلى أي لغة أخرى):

    البرمجة الخوارزميات attachment.php?attac



    ملاحظة: قمت بوضع البرنامج على شكل صورة لأنني لم أستطع تنسيق الكود بشكل جيد ضمن المشاركة
    ملاحظة 2: لتطبيق هذا البرنامج يجب أن يكون لديك معرفة ولو بسيطة بلغة فيجيوال بيسيك

    مواضيع ذات صلة



    0 Not allowed!


    الصور المرفقة
    التعديل الأخير تم بواسطة عبد الجواد ; 04-09-2006 الساعة 05:23 PM
    رد مع اقتباس  

  2. #2  
    تاريخ التسجيل
    Aug 2006
    المشاركات
    507
    Thumbs Up
    Received: 5
    Given: 0
    يمكن تحميل مثال للبرنامج بلغة فيجيوال بيسيك 6 من المرفقات.


    0 Not allowed!


    الملفات المرفقة
    رد مع اقتباس  

  3. #3  
    تاريخ التسجيل
    Jul 2006
    المشاركات
    1,035
    Thumbs Up
    Received: 18
    Given: 29
    بارك الله بكم


    0 Not allowed!


    رد مع اقتباس  

  4. #4 Smile  
    تاريخ التسجيل
    Feb 2006
    المشاركات
    185
    Thumbs Up
    Received: 2
    Given: 0
    سبقتني اخي العزيز عبدالجواد بطرح الموضوع فقد كنت سأضع عليك الفكره بأن تعمل على كتابة بعض المشاركات في استخدام لغات البرمجه في عمل البرامج الهندسيه
    ولكن بارك الله فيك قرأت افكاري

    منتظر هذه السلسله بفارغ الصبر
    فلا تتأخر علينا


    تحياتي



    0 Not allowed!


    رد مع اقتباس  

  5. #5  
    تاريخ التسجيل
    Aug 2006
    المشاركات
    507
    Thumbs Up
    Received: 5
    Given: 0
    السلام عليكم:

    شكراً لكم، وأنا الآن أقوم بكتابة موضوع عن إيجاد جذور تابع مستمر، أي إيجاد حل المعادلة:
    f(x)=0

    حيث f هو تابع ل x أياً كان.

    مثلاً: f(x) = 2 * sin(x)/x + cos(x)^2 - x^2

    ولكنه يحتاج إلى بعض الوقت


    0 Not allowed!


    رد مع اقتباس  

  6. #6 Smile  
    تاريخ التسجيل
    Feb 2006
    المشاركات
    185
    Thumbs Up
    Received: 2
    Given: 0
    متابع معاك


    الله يعينك



    تحياتي



    0 Not allowed!


    رد مع اقتباس  

  7. #7  
    تاريخ التسجيل
    Aug 2006
    المشاركات
    507
    Thumbs Up
    Received: 5
    Given: 0
    رد مع اقتباس  

  8. #8  
    تاريخ التسجيل
    May 2009
    المشاركات
    1
    Thumbs Up
    Received: 0
    Given: 0
    اريد حل معادلة من الدرجة الثانية بواسطة خوارزمية من فضلكم


    0 Not allowed!


    رد مع اقتباس  

  9. #9  
    تاريخ التسجيل
    Aug 2006
    المشاركات
    507
    Thumbs Up
    Received: 5
    Given: 0
    السلام عليكم:

    أهلاً أخ zizoumira،
    في الحقيقة لم أفهم سؤالك، أليست مشاركتي الأساسية أعلاه هي إيجاد حل معادلة من الدرجة الثانية؟


    0 Not allowed!


    رد مع اقتباس  

  10. #10  
    تاريخ التسجيل
    Oct 2010
    المشاركات
    1
    Thumbs Up
    Received: 0
    Given: 0
    بلا يا اخي لكن اريدها بلغة الجافا

    وجزاك الله خير الجزاء


    0 Not allowed!


    رد مع اقتباس  

  
صفحة 1 من 2 12 الأخيرةالأخيرة
الكلمات الدلالية لهذا الموضوع

عرض سحابة الكلمة الدلالية

RSS RSS 2.0 XML MAP HTML