تعلم معنا لغة البرمجة الحديثة mql5 الخاصة بالميتاتريدر 5

الموضوع في 'مجالس البرمجة الاحترافية - MQL Programming' بواسطة وضاح عطار, بتاريخ ‏23/6/2010.

  1. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    ثانيا المتحولات الرقمية بفاصلة عائمة :

    وهي نوعان فقط :

    - النوع Float ( رقم بفاصلة )
    يستخدم أربع بايتات في الذاكرة .
    مجاله من 1.175494351e-38 إلى 3.402823466e+38 .

    أي من -1175494351 قبلها 38 صفر قبل الفاصلة .
    إلى 3402823466 قبلها 38 صفر قبل الفاصلة .


    - النوع Double ( رقم بفاصلة دقة مضاعفة )
    يستخدم ثماني بايتات في الذاكرة .
    مجاله من 2.2250738585072014e-308 إلى
    1.7976931348623158e+308

    والشرح نفس السابق .



    ثالثا المتحولات النصية :

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

    يتم تخزين كل حرف في بايتين بنظام اليونيكود الذي يتيح لك تخزين وإظهار الأحرف العربية والصينية والكورية وغيرها من اللغات .
  2. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    قواعد تسمية المتحولات :

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

    يجب أن لا يبدأ اسم المتحول برقم مثل 12val ولكن يسمح أن ينتهي برقم مثل val12 .

    يجب أن لا يتضمن اسم المتحول الأحرف التالية أو بعضها وهي ()+-*&^%$#@!~ .

    يجب أن لا يكون اسم المتحول أحد الكلمات المحجوزة من قبل اللغة نفسها ويسمح فقط أن تكون جزءا من اسم المتحول .

    وهذه الكلمات المحجوزة هي :

    bool enum struct char float uchar class int uint color long ulong datetime short ushort double string void const private protected public virtual extern input static
    break do return case else sizeof continue for switch default if while delete new
    false #define #property this #import true #include


    أيضا لا تقبل اللغة التعامل مع أي متحول قبل أن يتم تعريفه .

    لكل متحول مجال Scope خاص به .

    ففي حال أردنا أن يكون المتحول ظاهرا ومرئيا في كل البرنامج فإننا نقوم بتعريفه في بداية البرنامج .

    أما لو أردنا أن يكون المتحول محليا فقط local أي مجاله ظاهرا فقط في وظيفة محددة فإننا نعرفه داخل هذه الوظيفة .

    بالطبع لا يمكننا أن نتعامل مع هذا المتحول من خارج هذه الوظيفة .

    مثال :

    كود PHP:
     
    #property copyright "Copyright 2010, Eng Waddah Attar."
    #property link      "http://vb.borsat.net"
    input double MaximumRisk        0.02;    // Maximum Risk in percentage
    string MyName="Waddah";
    int OnInit()
    {
      Print(
    MyName);
      return(
    0);
    }
    void OnDeinit(const int reason)
    {
      
    MyName="";
    }
    void OnTick()
    {
    }

    لقد قمنا بتعريف متحول اسمه MyName في بداية البرنامج وهذا المتحول مجاله عام أي أننا نستطيع التعامل معه من خلال أي وظيفة في البرنامج .


    مثال :

    كود PHP:
     

    #property copyright "Copyright 2010, Eng Waddah Attar."
    #property link      "http://vb.borsat.net"
    input double MaximumRisk        0.02;    // Maximum Risk in percentage
    string MyName="Waddah";
    int OnInit()
    {
      
    string YourName="I don't know"
      
    Print(YourName);
      return(
    0);
    }
    void OnDeinit(const int reason)
    {
      
    MyName="";
    }
    void OnTick()
    {
    }

    في هذا المثال عرفنا متحول باسم YourName داخل الوظيفة OnInit وهذا يجعل المتحول محليا أي أننا لن نستطيع التعامل معه إلا من خلال الوظيفة OnInit .

  3. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    أمثلة عن المتحولات :

    فيما يلي بعض الأمثلة لتوضيح كيفية التعامل مع المتحولات باختلاف أنواعها .


    مثال :

    تعريف متحول رقمي وإسناد قيمة افتراضية له .

    كود PHP:
     
    int mynumber
    ;
    mynumber=10;

     


    يمكن كتابة المثال السابق على الشكل المختصر التالي :

    كود PHP:
     
    int mynumber
    =10;
     



    مثال :

    إجراء عمليات حسابية على المتحولات الرقمية .

    كود PHP:

    int count
    =0;
    count=count+1;
     

    يمكن كتابة المثال السابق بطريقة مختصرة هي :
    كود PHP:

    int count
    =0;
    count++;

    أو

    كود PHP:
     
    ++count;

     

    وبنفس الطريقة لتنقيص واحد مثلا نكتب :

    كود PHP:
     
    count
    --;

    أو

    كود PHP:
     
    --count;

    عملية الضرب كما يلي :

    كود PHP:
     
    double x
    =1.2345;
    double y=3.14;
    double z=x*y;

    والقسمة تكون كما يلي :

    كود PHP:
     
    double z
    =x/y;

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

    z
    =(x-1)/(y-1);

    في حال لم نضع الأقواس سابقا فإن النتيجة ستكون خاطئة .

    الآن خمن ما معنى العبارات الأربع التالية :

    كود PHP:
    += x;
    -= x;
    *= x;
    /= x;

  4. wajdyss

    wajdyss عضو

    إنضم إلينا في:
    ‏3/3/2009
    المشاركات:
    92
    الخبرة البرمجية:
    متقدم




    الاجابة بالحبر السري وبأصغر خط ممكن
    ما احد يغش

    شكراً لك أخي وضاح

  5. DIGROL

    DIGROL عضو

    إنضم إلينا في:
    ‏7/7/2010
    المشاركات:
    2


    حقيقة اللسان يعجز عن التعبير عن معاني الشكر والاعجاب
    مشكور اخي وضاح
  6. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    ما دام وجدي يجيب فأكيد الإجابة صح [​IMG].
  7. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    أهلا بك أخي الكريم

    وإن شاء الله تستفيد من هذا الموضوع .
  8. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    الحلقات Loops :

    مفهوم الحلقات موجود في جميع لغات البرمجة دون استثناء .
    والحلقات هي باختصار تنفيذ مجموعة أوامر برمجية عدد محدد من المرات .

    مثلا لو أردنا طباعة الأرقام من 1 إلى 100 فليس من المعقول كتابة 100 سطر لأمر الطباعة .

    بل نقوم بعمل حلقة بسيطة لتنفيذ الطباعة لأي مجال من الأرقام .


    التركيبة الأساسية للحلقات في لغة MQL5 :

    لدينا فعليا تركيبتين مختلفتين للحلقات الأشهر بينهما هي حلقة for تأتي بعدها حلقة while .

    نبدأ بحلقة for ولها التركيب التالي :

    كود PHP:
     
    for(int i=0;i<=100;++i)
    {
      
    // ما تريد عمله 
    }

     

    الحلقة السابقة وهي حلقة for التي تتميز بوجود عداد هو المتحول i .

    تم تعريف المتحول i داخل الحلقة نفسها على أنه متحول رقمي صحيح .

    أيضا تم وضع شرط استمرار الحلقة وهو أن تكون قيمة المتحول i أقل أو تساوي 100 .

    أخيرا تم وضع قيمة التزايد في العداد i مع كل تنفيذ وهنا نحن نزيد العداد واحد كل مرة .

    هذه الثلاثة أمور يتم وضعها داخل أقواس الحلقة for مفصولة بفاصلة منقوطة .

    بعد كتابة سطر الحلقة for يتم فتح قوسين معقوفين {} وفيهما نضع الأوامر البرمجية التي نريد .

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

    أي أننا نضع كل ما نريد تكرار تنفيذه داخل القوسين المعقوفين .

    تبدأ الحلقة بجعل قيمة المتحول i مساوية للصفر ويتم تنفيذ ما داخل القوسين المعقوفين .

    يتم تكرار الحلقة مرة أخرى مع زيادة لقيمة i بمقدار واحد .

    وقبل أن يتم التنفيذ يتم فحص شرط الحلقة وهو أن i أصغر أو مساوية للقيمة 100 حسب المثال .

    فإذا تحقق الشرط أكمل تنفيذ ما داخل الحلقة من أوامر .

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

  9. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    النوع الثاني من الحلقات هي حلقة while وهي تحتوي فقط شرط تكرار الحلقة ولا تحتوي على عداد مثل حلقة for .

    تركيب الحلقة while هو كالتالي :

    كود PHP:
     
    while(k<n)
      {
       
    y=y*x;
       
    k++;
      }
     

    قبل أن يتم تنفيذ ما بداخل الحلقة يتم فحص شرط الحلقة أولا .

    في حال تحقق الشرط يتم تنفيذ ما بداخل الحلقة .

    في حال لم يتحقق الشرط لا يتم تنفيذ ما بداخل الحلقة بل ينتقل التنفيذ إلى ما بعد الحلقة مباشرة .

    في حال تحقق الشرط مرة أخرى يتم تنفيذ أوامر الحلقة مرة أخرى .

    ويجب الانتباه إلى أن شرط الحلقة لا بد أن يتغير في لحظة ما داخل الحلقة نفسها .

    وإلا لن يستطيع البرنامج الخروج من هذه الحلقة أبدا .


    هناك طريقة أخرى لكتابة هذه الحلقة بالشكل التالي :


    كود PHP:
       do
         {

     
     
          
    i++; // without this operator an infinite loop will appear!
         
    }
       while(
    i<10);
    الطريقة الثانية تعني أن يتم تنفيذ الحلقة أولا دون فحص لأي شرط .

    لكن لا يتم التكرار إلا في حال تحقق الشرط .

    يجب الانتباه أيضا إلى جعل الشرط لا يتحقق في لحظة ما حتى يمكن الخروج من الحلقة .
  10. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    الشرط If :

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

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

    فهي ببساطة تفحص قيمة أو قيم عدة متحولات وفي حال مطابقتها للشروط المحدد فإن البرنامج ينفذ أوامر برمجية معينة .

    وفي حال عدم تحقق هذه الشروط فإنه ينفذ أوامر أخرى أو لا ينفذ أي أمر حسب البرنامج .

    التركيبة العامة للشرط if هي :

    كود PHP:

    if(شروط)
    {
      
    أوامر برمجية تنفذ في حال تحققت الشروط
    }
    else
    {
      
    أوامر برمجية في حال لم تحقق الشروط
    }
    يجب كتابة كتلة الأوامر البرمجية في حال تحققت الشروط .

    لكنك غير مطالب بكتابة كتلة الأوامر البرمجية في حال لم تتحقق الشروط .

    مثلا :

    كود PHP:
    if(x>10)
    {
      Print(
    "قيمة المتحول اكس أكبر من عشرة");
    }
    else
    {
      Print(
    "قيمة المتحول اكس أصغر من أو تساوي عشرة");
    }

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

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

    أما لو كانت قيمة المتحول x أصغر من 10 أو مساوية لها فهذا يعني عدم تحقق الشرط المحدد .

    وسوف يتم تنفيذ الأمر البرمجي في الكتلة else .

    كما قلت أنت مخير في وضع كتلة else أو عدم وضعها وذلك حسب متطلبات البرنامج نفسه .
  11. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    طرق فحص الشرط كثيرة ومتنوعة وسوف نعرض الأهم فالأهم :


    - المساواة :

    يتحقق الشرط في حال كانت قيمة المتحولين متساوية .

    وتكتب هكذا :
    كود PHP:
     
    if(x==y)
     



    - عدم المساواة :

    يتحقق الشرط في حال كانت قيمة المتحولين غير متساوية .

    وتكتب هكذا :
    كود PHP:
     
    if(x!=y)
     



    - أكبر من :

    يتحقق الشرط في حال كانت قيمة المتحول الأول أكبر من قيمة المتحول الثاني .

    وتكتب هكذا :
    كود PHP:
     
    if(x>y)
     



    - أكبر من أو يساوي :

    يتحقق الشرط في حال كانت قيمة المتحول الأول أكبر من قيمة المتحول الثاني أو مساوية له .

    وتكتب هكذا :
    كود PHP:
     
    if(x>=y)
     



    - أصغر من :

    يتحقق الشرط في حال كانت قيمة المتحول الأول أصغر من قيمة المتحول الثاني .

    وتكتب هكذا :
    كود PHP:
     
    if(x<y)
     



    - أصغر من أو يساوي :

    يتحقق الشرط في حال كانت قيمة المتحول الأول أصغر من قيمة المتحول الثاني أو مساوية له .

    وتكتب هكذا :
    كود PHP:
     
    if(x<=y)
     
  12. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    يمكن فحص أكثر من شرط في نفس الوقت وفي حال تحققت كل الشروط فهذا يعني تنفيذ كتلة if البرمجية .


    هناك طريقتان رئيسيتان لدمج الشروط مع بعضها البعض وهما :

    - الطريقة الأولى بواسطة المعامل AND ويكتب هكذا && :

    عند دمج شرطين معا بواسطة المعامل ( و ) فهذا يعني وجوب تحقق الشرط الأول ووجوب تحقق الشرط الثاني في نفس الوقت .

    عندها فقط يتحقق الشرط الكلي لتركيبة if .

    مثلا :

    كود PHP:
    if(x==10 && y>=5)


    لدينا في المثال السابق شرطين الأول هو أن تكون قيمة المتحول x مساوية للقيمة 10 .

    والشرط الثاني هو أن تكون قيمة المتحول y أكبر من أو مساوية للقيمة 5 .

    وبما أن الشرطين مدموجين بمعامل AND فهذا يعني وجوب تحقق كلا الشرطين ليتحقق شرط if الكلي .

    يمكن دمج أكثر من شرط بواسطة معامل AND وبنفس الطريقة .


    الطريقة الثانية بواسطة المعامل OR ويكتب هكذا || :

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

    عندها فقط يتحقق الشرط الكلي لتركيبة if .

    مثلا :

    كود PHP:
    if(x==10 || y>=5)

    لدينا في المثال السابق شرطين الأول هو أن تكون قيمة المتحول x مساوية للقيمة 10 .

    والشرط الثاني هو أن تكون قيمة المتحول y أكبر من أو مساوية للقيمة 5 .

    وبما أن الشرطين مدموجين بمعامل OR فهذا يعني وجوب تحقق أحد الشرطين أو كلاهما ليتحقق شرط if الكلي .

    يمكن دمج أكثر من شرط بواسطة معامل OR وبنفس الطريقة .

    في حال دمج أكثر من شرط بواسطة OR فهذا يعني تحقق الشرط الكلي في حال تحقق على الأقل شرط واحد فقط من الشروط المدموجة .
  13. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    هناك طريقة أخرى لاتخاذ قرارت وفحص شروط أسرع وأسهل في الاستخدام ولكنها تستخدم فقط في حال كان لدينا شرط واحد للفحص .

    التعليمة البرمجية المستخدمة للفحص هي switch وتكتب على الشكل التالي :


    كود PHP:
    switch(x)
    {
      case 
    1:
         
    y=1;break;
      case 
    2:
         
    y=3;break;
      case 
    3:
         
    y=5;break;
      default:
         
    y=0;break;
    }

    من المثال السابق نجد أن التعليمة switch تتطلب اسم المتحول فقط بدون كتابة الشرط نفسه .

    يتم كتابة كل شرط ضمن التعليمة case ثم قيمة الشرط التي نريد فحصها .

    بعد ذلك نكتب ما نريد تنفيذه في حال تحققت هذه الحالة أو الشرط .

    ويجب أن لا ننسى كتابة التعليمة break التي تنهي سلسلة فحص الشروط والخروج من كتلة switch البرمجية بشكل كامل لينتقل التنفيذ إلى ما بعد هذه الكتلة مباشرة .

    في حال لم نضع التعليمة break فإن التنفيذ سيستمر ويتم فحص الحالات اللاحقة مما يسبب في تنفيذ تعليمات برمجية لا داعي لتنفيذها .

    طبعا هناك حالات خاصة معقدة تتطلب منا عدم كتابة break ليستمر التنفيذ على كل الحالات ولكنها ليست موضوعنا الآن .

    تستطيع بشكل اختياري تنفيذ تعليمات برمجية في حال لم تتوافق قيمة المتحول x مع أي من الحالات المذكورة وذلك بكتابة التعليمة default ثم كتابة ما تريد من تعليمات برمجية .

    ففي المثال السابق مثلا في حال لم تتحقق قيمة x في كونها 1 أو 2 أو 3 فإن قيمة y ستصبح صفرا .

    لا يهم ترتيب كتابة الحالات أو مقارنة الشرط وكلها ستعطي نفس النتيجة النهائية من حيث التنفيذ .

    كما رأيتم هنا فإننا في حال لزمنا فحص قيمة متحول واحد ولعدة حالات فإنه من الأسهل استخدام switch بدلا من if .

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

    لكن الطريقة switch في حال كان استخدامنا بسيطا فإنها أسهل في الكتابة ومختصرة أكثر .

    والمبرمج هو الوحيد الذي يستطيع اتخاذ القرار المناسب حسب خبرته وسياق البرنامج نفسه .
  14. wajdyss

    wajdyss عضو

    إنضم إلينا في:
    ‏3/3/2009
    المشاركات:
    92
    الخبرة البرمجية:
    متقدم


    جزاك الله كل خي اخي وضاح
  15. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    تكلمنا في المشاركات السابقة عن الحلقات for و while و do-while وأيضا عن switch لفحص حالات شرط معين .

    جميع التعليمات السابقة تنفذ على افتراض أن يستمر التنفيذ حتى انتهاء الحلقة بكاملها أو فحص الشروط بكاملها .

    طبعا أنت كمبرمج تحتاج أحيانا إلى كسر هذه الحلقة في حال تحقق شرط داخل الحلقة نفسها .

    وهذا الشرط ليس هو شرط الحلقة نفسه .

    مثلا أنت عملت حلقة من 1 إلى 1000 وتريد أن تبحث داخل مصفوفة عن قيمة معينة .

    في حال أنك وجدت القيمة المطلوبة فإنك تحتاج لكسر الحلقة والخروج منها مباشرة دون أن تستمر حتى نهاية الحلقة .

    لأنك بالأساس حصلت على ما تريد ولا داعي لتنفيذ باقي الحلقة .


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

    لأنها بالأساس حصلت على تطابق ولا داعي لفحص باقي الاحتمالات الأخرى .


    تتم عملية الكسر بواسطة التعليمة break وأنت تستطيع وضعها في أي مكان داخل الحلقة بحيث تنفذ عند تحقق شرط ما .

    دعنا نرى المثال التالي :

    كود PHP:
     
    for(i=0;i<1000;i++)
    {
      if(array[
    i]==52) break;
    }

    المثال السابق يبحث في مصفوفة array عن قيمة 52 وبمجرد أن يجدها فإنه يكسر الحلقة بالتليمة break .
    وهكذا في بقية التراكيب الأخرى .

    هناك تعليمة معاكسة لتعليمة break وهي التعليمة continue .

    وتستخدم فقط مع for و while و do-while ولا تستخدم مع switch .


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

    فعلى العكس منها تماما تعليمة continue فإنها تكسر الحلقة ولكن تعيد التنفيذ إلى بداية الحلقة مرة أخرى أي أنها تعيد تنفيذ الحلقة من البداية .
  16. وضاح عطار

    وضاح عطار مشرف سابق

    إنضم إلينا في:
    ‏27/5/2010
    المشاركات:
    1,460
    مكان الإقامة:
    سورية حلب
    العمر الفوركسي:
    من 8 الى 12 عام
    الخبرة البرمجية:
    محترف


    سوف نكمل شرح الدروس قريبا جدا إن شاء الله .
  17. أبوجلال

    أبوجلال عضو

    إنضم إلينا في:
    ‏12/12/2010
    المشاركات:
    228
    العمر الفوركسي:
    اقل من عام
    الخبرة البرمجية:
    لايوجد


    روعة روعة [​IMG]
    الله يبارك فيك يا أستاذ وضاح
    متابع معك بإذن الله[​IMG]
  18. كسير الحظ

    كسير الحظ عضو

    إنضم إلينا في:
    ‏18/6/2010
    المشاركات:
    99
    العمر الفوركسي:
    من 1 الى 3 عام
    الخبرة البرمجية:
    لايوجد


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

    اطلعت على كافة الردود
    وكمبتدئ اواجه مثل هذا الكلام النظري يصعب علي المسأله
    تمنيت ان يكون التطبيق تدريجي ولو احتجنا لتفصيل في مساله معينه استزدنا منها افضل لي على الاقل كمتلقي للمعلومه

    اشكرك على اي حال
  19. Aerius

    Aerius عضو

    إنضم إلينا في:
    ‏29/9/2010
    المشاركات:
    33
    مكان الإقامة:
    Al Riyadh


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

    why input before int
    What is the Input Function
    Why indicator buffers are double
    and why we use double three times
    And what is the global variable !!!!!


    وشكرا مقدما

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

    • Q-No.1.jpg
      Q-No.1.jpg
      حجم الملف:
      111.1 ك. ب
      المشاهدات:
      23
  20. cresta

    cresta عضو

    إنضم إلينا في:
    ‏11/9/2011
    المشاركات:
    1


    [​IMG]

    متابعين استاذ وضاح بارك الله فيك وفي علمك


    [​IMG]

مشاركة هذه الصفحة