تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الدرس 3- المتغيرات والثوابت و تتمة الالة الحاسبة
#1
كاتب الموضوع : Tarek Aldwire

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

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

ProCSharp 2008 and .net2008 platform الصورة مأخوذة من

وتعريف متغير ما يتم بالشكل التالي:

كود :
[color=#000000][COLOR=#0000bb]int x [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];  
[/COLOR][color=#0000bb][/color][/COLOR]

فهنا تم تعريف متغير رقمي إسمه x وحمل القيمة 0

مثال توضيحي:
أولا قم بتعريف متغير من نوع string إسمه Var وضع فيمته = MyProgram على الشكل التالي:

كود :
[color=#000000][COLOR=#0000bb]string myvar [/color][color=#007700]= [/color][color=#dd0000]"MyProgram"[/color][COLOR=#007700];  
[/COLOR][color=#0000bb][/color][/COLOR]

ثم قم بوضع زر وكتب في الحدث Click الخاص بالزر : (تفاصيل كتابة الكود في الحدث Click في الدرس 2)

كود :
[color=#000000][COLOR=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][COLOR=#007700](Var);  
[/COLOR][color=#0000bb][/color][/COLOR]


الثوابت:
إن الثوابت ليس لها أنواع فهي كأنواع المتغيرات لكن لا يمكن التغيير من فيمتها الإفتراضية
مثلا

كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]public const [/color][color=#0000bb]int MyNum[/color][color=#007700]= [/color][color=#0000bb]100[/color][COLOR=#007700];  
[/COLOR][color=#0000bb][/color][/COLOR]

فهنا دائما الثابت MyNum سوف تكون فيمته 100
وإذا حاولنا تغييرها سوف يظهر خطأ


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]public const [/color][color=#0000bb]int MyNum[/color][color=#007700]= [/color][color=#0000bb]100[/color][COLOR=#007700];
[/COLOR][color=#0000bb]MyNum [/color][color=#007700]= [/color][color=#0000bb]50[/color][color=#007700];    [/color][COLOR=#0000bb]هنا يوجد خطأ  
[/COLOR][/COLOR]

تستخدم الثوابت لحفظ رقم معين مثلا مقدار التحويل بين عملتين

أظن أصبح لديك معلومات جيدة عن المتغيرات والثوابت ولمزيد من المعلومات عنها راجع ال MSDN
والان سوف نبدأ بإكمال الألة الحاسبة
_____________________________


الملفات المرفقة صورة/صور
   
}}}
تم الشكر بواسطة:
#2
في الدرس السابق وصلنا في الالة الحاسبة إلى هذا الكود
( مع العلم إننا قد أضفنا 2 TextBox و 1 Button )
الكود كامل:

كود :
[color=#000000][COLOR=#0000bb]using System[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Collections[/color][color=#007700].[/color][color=#0000bb]Generic[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]ComponentModel[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Data[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Drawing[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Linq[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Windows[/color][color=#007700].[/color][color=#0000bb]Forms[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using  Microsoft[/color][color=#007700].[/color][color=#0000bb]VisualBasic[/color][COLOR=#007700];

[/COLOR][COLOR=#0000bb]namespace WindowsFormsApplication1
[/COLOR][COLOR=#007700]{
    public [/COLOR][color=#0000bb]partial [/color][color=#007700]class [/color][color=#0000bb]Form1 [/color][color=#007700]: [/color][COLOR=#0000bb]Form
    [/COLOR][COLOR=#007700]{

        public [/COLOR][color=#0000bb]Form1[/color][COLOR=#007700]()
        {
            [/COLOR][color=#0000bb]InitializeComponent[/color][COLOR=#007700]();
        }

        private [/COLOR][color=#0000bb]void button1_Click[/color][color=#007700]([/color][color=#0000bb]object sender[/color][color=#007700], [/color][color=#0000bb]EventArgs e[/color][COLOR=#007700])
        {
            [/COLOR][color=#0000bb]double num1[/color][color=#007700], [/color][color=#0000bb]num2[/color][COLOR=#007700];

                [/COLOR][color=#0000bb]num1 [/color][color=#007700]= [/color][color=#0000bb]double[/color][color=#007700].[/color][color=#0000bb]Parse[/color][color=#007700]([/color][color=#0000bb]textBox1[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700]);
                [/COLOR][color=#0000bb]num2 [/color][color=#007700]= [/color][color=#0000bb]double[/color][color=#007700].[/color][color=#0000bb]Parse[/color][color=#007700]([/color][color=#0000bb]textBox2[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700]);
                [/COLOR][color=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700](([/color][color=#0000bb]num1 [/color][color=#007700]+ [/color][color=#0000bb]num2[/color][color=#007700]).[/color][color=#0000bb]ToString[/color][COLOR=#007700]());

        }
    }
}  
[/COLOR][/COLOR]

وكانت نتيجة الكود الة حاسبة لكن هناك مشكلة بها إنه إذا وضعنا أحرف بدل من الأرقام فسوف يظهر Error
الحل:


كيف نجعل البرنامج يتحقق من القيم المدخلة:
سوف نستخدم لأداء هذا الغرض الكلمة try وهي كلمة محجوزة تستخدم لإلتقاط الأخطاء إذا حصلت عن طريق الكلمة المحجوزة catch بإمكانك إذا أردت أن ينفذ كود ما إذا حصل Error أو لم يحصل عن طريق الكلمة finally (( لسنا بحاجة لها الان ))

فسيصبح الكود الجمع بعد تنسيقه مع الكلمة المحجوزة try كالتالي:

كود :
[color=#000000][COLOR=#0000bb]            double num1[/color][color=#007700], [/color][color=#0000bb]num2[/color][COLOR=#007700];
            try
            {
                [/COLOR][color=#0000bb]num1 [/color][color=#007700]= [/color][color=#0000bb]double[/color][color=#007700].[/color][color=#0000bb]Parse[/color][color=#007700]([/color][color=#0000bb]textBox1[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700]);
                [/COLOR][color=#0000bb]num2 [/color][color=#007700]= [/color][color=#0000bb]double[/color][color=#007700].[/color][color=#0000bb]Parse[/color][color=#007700]([/color][color=#0000bb]textBox2[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700]);
                [/COLOR][color=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700](([/color][color=#0000bb]num1 [/color][color=#007700]+ [/color][color=#0000bb]num2[/color][color=#007700]).[/color][color=#0000bb]ToString[/color][COLOR=#007700]());
            }
            catch
            {
                [/COLOR][color=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700]([/color][color=#dd0000]"يرجى التأكيد من القيم المدخلة"[/color][COLOR=#007700]);
                [/COLOR][color=#0000bb]textBox1[/color][color=#007700].[/color][color=#0000bb]Text [/color][color=#007700]= [/color][color=#dd0000]"0"[/color][COLOR=#007700];
                [/COLOR][color=#0000bb]textBox2[/color][color=#007700].[/color][color=#0000bb]Text [/color][color=#007700]= [/color][color=#dd0000]"0"[/color][COLOR=#007700];
            }  
[/COLOR][/COLOR]

جربها ولاحظ:
في حال وجود أي خطأ في تنفيذ الكود في try سوف ينتقل المنفذ إلى catch وهكذا لن يتوقف البرنامج عن العمل

الان نكون قد أتممنا الالة الحاسبة
_____________________________________________


ولكن سوف أشرح عن الكلمة المحجوزة try قليلا لأهميتها:
شاهد الكود التالي ( أولا ضع textbox و button واكتب الكود التالي في الحدث click لل button)

كود :
[color=#000000][COLOR=#0000bb]            double x[/color][COLOR=#007700];
            try
            {
                [/COLOR][color=#0000bb]x [/color][color=#007700]= [/color][color=#0000bb]double[/color][color=#007700].[/color][color=#0000bb]Parse[/color][color=#007700]([/color][color=#0000bb]textBox1[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700]);
            }
            catch
            {
                [/COLOR][color=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700]([/color][color=#dd0000]"لا يمكن إجراء عملية التحويل"[/color][COLOR=#007700]);
            }
            [/COLOR][COLOR=#0000bb]finally
            [/COLOR][COLOR=#007700]{
                [/COLOR][color=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700]([/color][color=#dd0000]"شكرا لإستخدامك هذا البرنامج"[/color][COLOR=#007700]);
            }  
[/COLOR][/COLOR]

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

أظن أن مفهوم try أصبح واضحا

ولمن واجه أي مشكلة فهاذا الكود كامل:

كود :
[color=#000000][COLOR=#0000bb]using System[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Collections[/color][color=#007700].[/color][color=#0000bb]Generic[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]ComponentModel[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Data[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Drawing[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Linq[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Windows[/color][color=#007700].[/color][color=#0000bb]Forms[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using  Microsoft[/color][color=#007700].[/color][color=#0000bb]VisualBasic[/color][COLOR=#007700];

[/COLOR][COLOR=#0000bb]namespace WindowsFormsApplication1
[/COLOR][COLOR=#007700]{
    public [/COLOR][color=#0000bb]partial [/color][color=#007700]class [/color][color=#0000bb]Form1 [/color][color=#007700]: [/color][COLOR=#0000bb]Form
    [/COLOR][COLOR=#007700]{

        public [/COLOR][color=#0000bb]Form1[/color][COLOR=#007700]()
        {
            [/COLOR][color=#0000bb]InitializeComponent[/color][COLOR=#007700]();
        }

        private [/COLOR][color=#0000bb]void button1_Click[/color][color=#007700]([/color][color=#0000bb]object sender[/color][color=#007700], [/color][color=#0000bb]EventArgs e[/color][COLOR=#007700])
        {
            [/COLOR][color=#0000bb]double x[/color][COLOR=#007700];
            try
            {
                [/COLOR][color=#0000bb]x [/color][color=#007700]= [/color][color=#0000bb]double[/color][color=#007700].[/color][color=#0000bb]Parse[/color][color=#007700]([/color][color=#0000bb]textBox1[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700]);
            }
            catch
            {
                [/COLOR][color=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700]([/color][color=#dd0000]"لا يمكن إجراء عملية التحويل"[/color][COLOR=#007700]);
            }
            [/COLOR][COLOR=#0000bb]finally
            [/COLOR][COLOR=#007700]{
                [/COLOR][color=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700]([/color][color=#dd0000]"شكرا لإستخدامك هذا البرنامج"[/color][COLOR=#007700]);
            }
        }
    }
}  
[/COLOR][/COLOR]

إلى لقائنا في الدرس القادم إن شاء الله
}}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم