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

الموضوع: تبادل الخبرات[1].(مالبديل للدالة)for

  1. #1
    خبير JavaScript
    تاريخ التسجيل
    Jul 2002
    المشاركات
    2,920

    تبادل الخبرات[1].(مالبديل للدالة)for



    السلام عليكم

    ارتأيت أن أبدأ بدوري سلسلة خاصة بي اقتداءا و الأساتذة القدامى هنا وهذه السلسلة أهذف من خلالها تبادل الخبرات بين شريحة كبيرة من المبرمجين و المصممين ، لكن غالبا ستكون لها علاقة بالبرمجة ..
    هذه الحلقة مخصصة للمبرمجين كافة كيفما كانت اللغة التي يبرمج بها ،
    الا وهو مالبديل للدالة for() او بالأحرى ماهي خوارزميتها التي تعتمد؟
    كيف تعمل وماهي ماهيتها ؟

    مثال للدالة for() بال php
    كود PHP:
    $a 3;
    $b 10;
    $c 0;
    for(
    $a;$a<$b;$a++){
    $c $a 2;
    }
    echo 
    $c
    وهو نفسه بالجافا سكريبت
    كود PHP:
    var 3;
    var 
    10;
    var 
    0;
    for(
    a;a<b;a++){
    2;
    }
    document.write(c); 
    النتيجة التي ستطبع هنا لل المتغير c هي 11
    الآن كيف سنصل الى نفس النتيجة بدون الإعتماد على الدالة for و while فقط دالة جديدة سميها ماتشاء و if()
    كل المبرمجين مدعوين ليدلو بدلوهم ويعطونا ماعندهم من عندهم، من خبرة وليس نقلا او شيئ من هذا القبيل
    أقسم اني بدوري لم أعتمد الا على نفسي و خبرتي في الوصول لنفس النتيجة

    ارينا ما عندك ، تعريف مفهوم بديل ...
    شارك معنا أو ابقى الى النهاية لتستفيد







  2. #2
    عضو فعال جدا
    تاريخ التسجيل
    Feb 2005
    المشاركات
    2,739


    هو اولا انا مش فاهم حاجه بس شكل الموضوع كبير وكبير اوى
    دخل فى سياسة الدوله






  3. #3
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2003
    المشاركات
    502


    نستخدم do

    لكن شكلي مافهمت سؤالك

    الي اعرفه ان الدوران ( loop )

    نختار بين do ... or .... while

    واسهلها هــي for

    وانا اتكلم بالعموم لا اخص لغه معلينه

    اتمنى توضيح سؤالك





    __________________
    ---[ كلمتان خفيفتان على اللسان ]---
    ---[ ثقيلتان في الميزان ]---
    ---[ حبيبتان الى الرحمن ]---
    ---[ سبحان الله وبحمده سبحان الله العظيم ]---

  4. #4
    خبير JavaScript
    تاريخ التسجيل
    Jul 2002
    المشاركات
    2,920


    أخي WaLeeD شكرا لك
    ما نريد هو البديل ل for بدالة من عندك(شخصية)
    do و while اخوة ل for لا نريد الاستعانة بهم
    الأمر قد يصل الى فلسفة رقمية






  5. #5


    أشوف السؤال أقرب إلى أنه يكون لغز :con2:

    بس هذا الكود يؤدي الغرض

    كود PHP:
    function loop($a,$c)
    {
    global 
    $b;

    $c $a 2;

    if (
    $a<$bloop ($a,$c);
    else return 
    $c;
    }

    $c=loop($a,$c);
    echo 
    $c






    __________________
    هل زرت شبكة المحروقي من قبل؟
    http://almah.net

  6. #6
    خبير JavaScript
    تاريخ التسجيل
    Jul 2002
    المشاركات
    2,920


    المحروقي
    اقتربت جدا جدا
    وبهذا لم يبقى لغز
    لكن يمكن ان تختصره اكثر
    واذا امكن شرح بسيط ، رغم ان الكود يشرح نفسه






  7. #7
    خبير سيرفرات لينكس
    تاريخ التسجيل
    Mar 1999
    المشاركات
    4,917


    الفكرة جيدة من حيث حث المخ للتفكير .
    ولكن لا اجد دعوى من هذا المضمار حيث هذة الخطوة هي عودة للوراء
    ولكن من يريد ان ينشء لغة خاصة كما فعلنا سابقا بالجافا قمنا بعمل مفسر صغير .(كنت مع اصدقائي من يدرسون هندسة الكمبيوتر طبعا انا كنت بساوي الشاي و القهوة هههههههههههه)
    طبعا المفسر بسيط جدا يقوم بالعمليات الرياضية ورسم بعض لاشكال اعتمادا على دوال تمت كتابتها على انها هي المفسر البرمجي .

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






  8. #8
    خبير JavaScript
    تاريخ التسجيل
    Jul 2002
    المشاركات
    2,920


    اخ بشار أنا لا اقول ان نعتمد عليهاونعود الى الوراء لكن هناك مبرمجين يتعاماون معها دون ان يفهمو الياتها
    ونريد هنا ان نعرف ابسط طريقة للوصول لنفس نتيجتها






  9. #9
    عضو سوبر نشيط
    تاريخ التسجيل
    Aug 2004
    المشاركات
    723


    نعم المحروقي وصل للنفس النتيجة وراح اضيف نتيجة اخرى

    كود PHP:
    var a,b,c
    a
    =2
    b
    =2
    c
    =2

    if (a==b) {
    document.write(c); 
    }
    else if (
    b==c) {
        
    document.write("c");
    }
    else {
        
    document.write("a");








  10. #10


    أخي زيزوار

    البديل هو مايسمى بالRecursion

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

    وهو أن تقوم الدالة باستدعاء نفسها أكثر من مرة حتى تصل الى شرط معين تقف عنده

    المثال : ماقصروا الشباب بالأمثلة

    شرح بسيط
    http://www.iol.ie/~jmchugh/csc302/

    للأمانة الكلام هذا أتذكره من أيام الدراسة في الكلية .

    يعني ماهو من خبرتي ower:






  11. #11
    عضو فعال
    تاريخ التسجيل
    Feb 2004
    المشاركات
    1,091


    موضوع جميل


    أرجو أن تعجل بإرسال الكتب لي بأي وسيلة
    ولا تقلق سأتكفل بالمصاريف عندما تصلني الكتب





    __________________
    CSS - XHTML

  12. #12
    عضو فعال
    تاريخ التسجيل
    Feb 2004
    المشاركات
    1,091


    إبراهيم ألا توجد ألغاز برمجية ؟





    __________________
    CSS - XHTML

  13. #13
    عضو سوبر نشيط
    تاريخ التسجيل
    Aug 2004
    المشاركات
    932


    والله مخي مقفل وراسي يعوررررررررني ومو عارف أكتب كود
    وما أدري الكود اللي كتبته صح أو لأ .. ماجربته عملي ..
    كود PHP:
    function loop($start,$end)
         {
                 
    $x=0;
                 if(
    $start>$end)
                        {
                              echo 
    $x;
                        }
                 else
                        {
                              
    $x=loop($start++,$end);
                        }
               echo 
    $x;
         } 






    __________________
    نحن أمة إقرأ التي لا تقرأ

  14. #14
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2003
    المشاركات
    793


    السلام عليكم

    موضوع شيق


    البديل هو الركيرجن

    نكتب الفنكشن, و نسوي لها كول من الفنكشن نفسها





    __________________
    قال أحد الشعراء بعد أن واجه المر من الحاقدين في مسابقة للشعر :-

    لو كان شعري شعيراً لأكلته الحمير, و لكن شعري شعوراً فأنا للحمير شعورا

  15. #15


    كما ذكر الأخوة البديل هو الـ Recursion بحيث يتم إستدعاء الدالة Recursively

    لكن مشكلة هذه الطريقة انها مكلفة جدا ، حيث يعتبر الـ Big O لدالة تحتوي على اوامر Linear هو :

    O(N^2)*X

    حيث X هو عدد مرات إستخدام هذه الدالة


    بينما إستخدام الـ Loops الجاهزة فتكلفتها :

    O(N)*X

    حيث X عدد مرات استخدام هذه النوعية من الـ Loops في البرنامج ( على نفس حجم البيانات N )


    فهذه الطريقة كما قال أخي بيشو ، خطوة الى الوراء ، وهذه الطريقة تختلف تماما عن الطرق التي تستخدمها الـ Compilers لتمثيل اوامر الـ Loops .










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

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

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