احترافية التحليل الفني في السوق السعودي

إعلانات تجارية اعلن معنا

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

الموضوع: الدرس السابع .. المتغيرات

  1. #1

    افتراضي الدرس السابع .. المتغيرات

    بسم الله الرحمن الرحيم

    مرحبا بكم في الدرس السابع ... المتغيرات في لغة MQL4 :


    المتغيرات Variables ؟

    هي اسماء تطلق على قطاع الذاكرة المخزن لنوع معين من البيانات.

    لنفهم أكثر سنرسم صورة عامة للموضوع كمثال:

    تخيل معي ان ذاكرة الكومبيوتر هي عبارة عن سلسلة من الصناديق مختلفة الأحجام , وحجم الصندوق هو مساحة التخزين بالبايت (وحدة البناء في الكومبيوتر)

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

    * خلال عملية الأعداد declaration نستخدم كلمة نخبر بها الكومبيوتر بنوع وحجم الصندوق المطلوب استخدامه , هذه الكلمة نطلق عليها keyword اي كلمة محجوزة تشير الى فئة معينة من البيانات .

    * بعد تحديد رمز البيان بكلمة محجوزة , عليك الأن بأختيار اسم معرف خاص للصندوق (والأفضل ان تختار اسما يدل على رمز البيان ايضا لتسهيل البرنامج) ,, مثلا حددت Integer (كلمة محجوزة معتاها عدد صحيح) لتصنيف رمز البيان , وتطلق اسما من مخيلتك وليكن مثلا files (معناها ملفات وهي كلمة اخترعتها انت) وتطلقها على الصندوق , هكذا يعرف الكومبيوتر ان يخزن ارقام صحيحة(نوع البيانات) في صندوق الذاكرة المدعو files .. وهكذا ... هذه المعرفات يطلق عليها اسم ثابت المتغيرات Variables constant.

    * الأن حددنا رمز البيانات واسم الصندوق , علينا الأن ان نضع هذه البيانات داخل الصندوق وذلك عن طريق ان ننسب assigning هذه البيانات الى هذا الصندوق (بكتابته برمجيا)

    * الأن حددنا رمز البيان في صندوقه المناسب واطلقنا معرفا ثابتا لهذا الصندوق له قيمة افتراضية هي الصفر (هنا نقول ان عملية الأعداد declaration قد تمت) .

    * عملية بدء عمل البرنامج بأدخال القيم (ادخال القيم في لغة MQL4 يكون عن طريق بيانات الأسعار القادمة من السيرفر) وتسمى هذه المرحلة ب عملية البدء initialization.

    يمكن اختصار الخطوات السابقة بمعنى أخر ايضا لوضوح الفكرة هكذا:

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

    على سبيل المثال , ماذا لو أخبرنا الكومبيوتر بهذا الكود :

    [PHP]int MyVaraible=0;
    [/PHP]

    معناه اننا نطلب من الكومبيوتر ان يوفر لنا حجم ذاكرة تبلغ 4 بايت(int تعني ذلك كما سيتضح في هذا الدرس) لمتغيرنا الذي اسميناه ب MyVaraibles.

    في المثال السابق استخدمنا:

    int ---------- Keyword

    int ---------- Integer data type.

    int ---------- Declaration

    MyVaraible ---------- Variable’s constant.

    =0 القيمة الأفتراضية

    (راجع الكلمات السابقة بما سبق شرحه)

    هناك انواع مختلفة من رموز البيانات :

    *اعداد صحيحة int
    *اعداد حقيقية(عشرية) double
    *حروف char
    *الوان color
    *السلسلة النصية string
    *قيم منطقية(صح وخطأ) bool
    *التاريخ datetime

    لقد قمت بنسخ السطور السابقة من درس رموز البيانات في لغة MQL4 لكم , لتتذكروا فقط ما هي المتغيرات , والأن كيف نقوم بعملية اعداد للمتغير ؟

    * الإعداد declaration :

    عملية اعداد المتغير تعني تقديم وتعريف هذا المتغير للبرنامج والمبرمج والمستخدمين وتحديد نوعه ومساحة التخزين الخاصة به , وذلك باستخدام الكلمات المحجوزة التي ذكرناها في درس رموز البيانات (int, double, char, bool, string, color and datetime) مع معرفات نختارها لها .

    مثال :

    [PHP]int MyVaraible;
    [/PHP]

    هنا قمنا بعملية اعداد declaration للمتغير ( الذي عرفناه بالأسم MyVaraible ) وحددنا نوعه كعدد صحيح integer بالكلمة المحجوزة ( int ) .

    لا يمكننا ان نستخدم المتغير في البرنامج دون عملية الإعداد تلك ( الكود في المثال اعلاه ) , فلو قمنا مثلا باستخدام المتغير في اكواد اللغة دون عملية اعداده ( الكود اعلاه هو مثال لعملية الإعداد ) ستعطي عملية التجميع compile خطأ برمجي : ( 'MyVaraible' - variable not defined. 1 error(s), 0 warning(s). )

    * الإبتداء Initialization :

    هذه العملية للمتغير تعني ربط قيمة ما لهذا المتغير

    مثال :

    [PHP]MyVaraible=0;[/PHP]

    يمكنك وضع القيمة مع الإعداد في نفس السطر , مثال :

    [PHP] int MyVaraible=0;[/PHP]

    كما يمكنك ان تضع إعداد declaration المتغير في سطر وعملية الأبتداء ( وضع القيمة ) Initialization في سطر أخر , مثال :

    [PHP]int MyVaraible;





    MyVaraible=5;
    [/PHP]

    لكن تذكر دائما ان عملية الإعداد declaration يجب ان تسبق عملية الأبتداء Initialization دائما .

    * مجالات المتغيرات في البرنامج Scopes :

    المتغيرات يتم وضعها بطريقتين : موضعي Local وعام Global .

    ماهو مجال المتغير ؟

    هو مكان الكود الذي سيتعرف على المتغير ويستطيع ان يتعامل معه .

    ما معنى هذا الكلام ؟

    سنشرح بتفصيل اكثر :

    a- متغيرات المجال الموضعي local scope :

    هي المتغيرات التي يتم إعدادها داخل الدالة و لا يتم التعامل معها الا داخل الدالة او الحلقة او الجملة الشرطية الخاصة بها فقط ( من اسمها "موضعي")

    مثال :

    [PHP]double my_func (double a, double b, double c)

    {

    int d ;

    return (a*b + c);

    }
    [/PHP]

    في هذا المثال a ,b ,c and d هم متغيرات موضعية ( داخلية ) اي انهم يستخدمون داخل قالب الدالة فقط ولا يمكن لأي دالة أخرى استخدامهم , حسنا كيف تعرف الدالة والبرنامج انهم خاصين بها وحدها فقط ؟ . الأجابة هي انهم وضعوا داخل القوسين ( ) بعد اسم الدالة ( مما يعني بالضرورة انهم لها وحدها) .

    b- متغيرات المجال العام global scope :

    وهي المتغيرات التي يتم إعدادها خارج الدوال والحلقات والقرارات ويكن استخدامها من اي مكان داخل البرنامج .

    مثال :

    [PHP]int Global_Variable;

    double my_func (double a, double b, double c)

    {

    return (a*b + c + Global_Variable);

    }
    [/PHP]

    هنا في هذا المثال تم إعداد المتغير Global_Variable خارج الدالة ( خارج القوسين ( ) ) وهكذا يمكن استخدامه من اي دالة في البرنامج ككل .

    تأخذ متغيرات المجال العام دائما القيمة الأفتراضية صفر , هذا اذا لم تستلم اي قيم أخرى .


    * المتغيرات الخارجية Extern variables :


    الكلمة المحجوزة ( extern ) تستخدم لإعداد انواع خاصة من المتغيرات , هذه الأنواع هي التي تعرف الإعدادات الرئيسية للبرنامج ( بمعنى اخر هي خصائص المؤشر او الكسبرت التي تظهر للمستخدمين عند فتحها )

    مثال :

    [PHP]extern color Indicator_color = C'0x00,0x00,0xFF'; // blue

    int init()

    {

    ...

    }

    [/PHP]

    هنا في هذا المثال , المتغير Indicator_color تم تعريفه على انه متغير خارجي .

    هذه المتغيرات الخارجية هي المتغيرات التي تظهر على النافذة التي تظهر لك عندما تقوم بتشغيل المؤشر او الكسبرت على الشارت , ونافذة الخصائص ايضا .

    انظر الصورة :

    الدرس السابع .. المتغيرات نادي خبراء المال

    في الصورة تظهر المتغيرات الخارجية على نافذة المؤشر .

    اي متغير تريد ان يتم تغييره من قبل المستخدمين العاديين عرفه على انه متغير خارجي extern variable .



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

  2. #2

    افتراضي رد : الدرس السابع .. المتغيرات

    جزاك الله خيرا
    لا اله الا الله وحده لا شريك له له الملك وله الحمد يحي و يميت و هو حى لا يموت بيده الخير و هو على كل شىء قدير

  3. #3

    افتراضي رد: الدرس السابع .. المتغيرات

    السلام عليكم ورحمة الله وبركاته
    بارك الله فبك وفي كل عزيز لديك وجعل الجنة مثواك

  4. #4

    افتراضي رد: الدرس السابع .. المتغيرات

    بارك الله فيك وفي كل عزيز لديك ووفقك في الدنيا والآخرة

معلومات الموضوع

الأعضاء الذين يشاهدون هذا الموضوع

الذين يشاهدون الموضوع الآن: 1 (0 من الأعضاء و 1 زائر)

المواضيع المتشابهه

  1. آخر المتغيرات في قوائم كبار الملاك لإقفال يوم السبت 1/11/2008
    بواسطة ALMUHTAREF في المنتدى نادي خـبـراء سـوق الـمـال السـعودي Saudi Stock Experts Club
    مشاركات: 1
    آخر مشاركة: 02-11-2008, 11:05 AM
  2. آخر المتغيرات لنسب كبار ملاك الاسهم لاقفال يوم الأربعاء
    بواسطة ALMUHTAREF في المنتدى نادي خـبـراء سـوق الـمـال السـعودي Saudi Stock Experts Club
    مشاركات: 2
    آخر مشاركة: 02-11-2008, 01:20 AM
  3. التحليل الموجي الدرس السابع
    بواسطة WHITE SHARK في المنتدى موسوعة التحليل الموجي (موجات إليوت) Elliot Waves Analysis Encyclopedia
    مشاركات: 8
    آخر مشاركة: 18-02-2008, 10:22 PM
  4. التحليل الموجي الدرس السابع
    بواسطة WHITE SHARK في المنتدى نادي خـبـراء سـوق الـمـال السـعودي Saudi Stock Experts Club
    مشاركات: 5
    آخر مشاركة: 09-02-2008, 05:26 PM
  5. أبغى أسوي حلقة ، تدور على المتغيرات ؟ كيف ؟
    بواسطة !MMM! في المنتدى نادي خبراء الأستراتيجيات والاكسبيرتات والبرمجة Strategies & Experts Advisors
    مشاركات: 2
    آخر مشاركة: 08-04-2007, 10:39 PM

الكلمات الدلالية لهذا الموضوع

مواقع النشر (المفضلة)

مواقع النشر (المفضلة)

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

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

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

الدعم الفني المباشر
دورات تدريبية
اتصل بنا