أكاديمية أون لاين للتدريب

 

 

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

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

صفحة 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

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



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

    0 Not allowed!


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


    › شاهد أكثر: البرمجة - الخوارزميات


  2. [2]
    عضو متميز


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

    0 Not allowed!


    الملفات المرفقة

  3. [3]
    عضو متميز
    الصورة الرمزية أبو نادر


    تاريخ التسجيل: Jul 2006
    المشاركات: 1,054
    Thumbs Up
    Received: 42
    Given: 100
    بارك الله بكم

    0 Not allowed!



  4. [4]
    عضو فعال جداً


    تاريخ التسجيل: Feb 2006
    المشاركات: 185
    Thumbs Up
    Received: 2
    Given: 0

    Smile

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

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


    تحياتي

    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]
    عضو فعال جداً


    تاريخ التسجيل: Feb 2006
    المشاركات: 185
    Thumbs Up
    Received: 2
    Given: 0

    Smile

    متابع معاك


    الله يعينك



    تحياتي

    0 Not allowed!



  7. [7]

  8. [8]
    جديد


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

    0 Not allowed!



  9. [9]

  10. [10]
    جديد


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

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

    0 Not allowed!



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

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

RSS RSS 2.0 XML MAP HTML

Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.