مدرستنا أحلى _ مدرسة العلا الخاصة

اهلا وسهلا زوارنا الكرام يسعدنا التسجيل في المنتدى لنتواصل
مدرستنا أحلى _ مدرسة العلا الخاصة

منتدى خاص بمدرسة العلا الخاصة بمدينة العاشر من رمضان

المواضيع الأخيرة

» حفلة المدرسة
السبت يناير 24, 2015 6:57 am من طرف waelelfiky

» invention forever
الأحد يوليو 21, 2013 11:48 am من طرف matrix

» سلسلة قطرات الندا في الدراسات الأجتماعية الصف السادس الأبتدائي الترم الأول
الجمعة ديسمبر 14, 2012 7:04 am من طرف أ/شعبان راضي

» مذكرة دراسات أجتماعية الصف السادس الأبتدائي الترم الثاني
الجمعة ديسمبر 14, 2012 6:42 am من طرف أ/شعبان راضي

» مناظرة الحياة والموت
الإثنين نوفمبر 26, 2012 7:48 am من طرف آية محمد مصطفى

» اختبار تجريبى للصف الرابع الابتدائى
الجمعة نوفمبر 23, 2012 10:23 am من طرف ابراهيم السيد على

» أختبار تجريبى للصف الرابع الابتدائى
الجمعة نوفمبر 23, 2012 10:20 am من طرف آية محمد مصطفى

» أختبار تجريبى للصف الخامس
الجمعة نوفمبر 23, 2012 10:15 am من طرف آية محمد مصطفى

» موقع ثانوية أون لاين
الجمعة نوفمبر 23, 2012 2:33 am من طرف أ_عبدالحميد السيد


    كمبيوتر جامد 3ع

    شاطر
    avatar
    RASHED*ERROR

    المساهمات : 38
    تاريخ التسجيل : 16/11/2009
    العمر : 23

    كمبيوتر جامد 3ع

    مُساهمة من طرف RASHED*ERROR في الإثنين مارس 08, 2010 11:01 am

    الفصل الأول
    تمثيل البيانات
    (1) كيف تجرى عملية حسابية في ال Visual Basic.net
    فى البداية تستقبل ما يكتبه المستخدم باستخدام اداة الكتابة Text Box وهذا يمثل المدخلات (مدخلات حرفية) تحول إلي قيم عددية التي يتم اجراء العمليات الحسابية عليها في ذاكرة الحاسب ثم تقوم بعرض النتائج
    (2) البيانات الثابتة و المتغيرة
    • اى بيانات يتم التعامل معها لابد ان تكون مخزنة في ذاكرة الحاسب الداخلية
    • ذاكرة الحاسب تتكون من ملايين الخلايا (الاماكن – المخازن) المتساوية و تسمى كل خلية (Byte )
    • السعة التخزينية للخلية اما حرف واحد او عدد صحيح بين – 128 و + 127
    • يمثل عدد الخلايا حجم الذاكرة ويعطى اسم لكل خلية او لكل مجموعة خلايا ما دامت تحمل قيمة واحدة حتى يسهل تتبعها و التعامل معها
    • اذا كانت القيم تتغير اثناء تشغيل البرنامج فإن اسماء الخلايا التى تحوى هذه القيم يطلق عليها متغير
    • اذا كانت القيم لا تتغير اثناء تشغيل البرنامج فإن اسماء الخلايا التى تحوي هذه القيم يطلق عليها الثوابت
    (3)انواع البيانات
    تتحدد البيانات 1- الحجم عدد Byte 2- المدي Range حدود القيم
    3—الدقة Precision عدد الخانات وهي خاصة بالرقمية فقط
    ومن اهم انواع البيانات
    1- Boolean تحتاج 2 خلية True/False
    2- Date تحتاج 8 خلية من 1/1/1000 الي 31/12/9999
    3- حروف *حرف Char يحتاج 2خلية حرف واحد
    *سلسلة حرفية String اي عدد من الحروف = عدد الخلايا
    4- اعداد 1-صحيحة
    Byte يحتاج خلية واحدة بين 0 و 255 الدقة خانة واحدة
    Short يحتاج 2 خلية بين – 32768 و+ 32767 الدقة 5 خانات
    Integer يحتاج 4 خلية بين + 2147483647 و – 2147483648 الدقة 10خانات
    Long يحتاج 8 خلية بين ± 9223372036854775808 الدقة 19 خانة
    2عشرية
    Single تحتاج 4 خلية بدقة 7 خانات Double تحتاج 8 خانات بدقة 15 خانة
    Decimal تحتاج 16 خلية بدقة 29 خانة
    (5)اختيار النوع المناسب لكل متغير
    حسب : نوع البيانات التي يمكن تخزينها فيه - العمليات التي يمكن اجراؤها عليه - حجم الذاكرة
    طبيعة البيانات المخزنة النوع المناسب السبب
    True / False Boolean احسن استغلال للذاكرة
    ارقام السيارات التليفونات الرقم القومي String اختيار وحيد
    مبلغ من المال Decimal يخزن ارقام عشرية وبدقة وبدون اخطاء وسريع في العمليات
    عدد صحيح بين ± 32768 Short استهلاك قليل للذاكرة واسرع في العمليات الحسابية
    عدد صحيح بين ± 2147483647 Integer اقل في الذاكرة واسرع في الحساب من Long
    عدد صحيح اكبر من ±2147483647 Long اختيار وحيد
    كسر عشري سبع خانات دقة Single اسرع من Double
    كسر عشري اكبر من 7 خانات دقة Double
    مثال اذا اردنا ان نخزن القيمة 123456.10987654321 في ثلاث متغيرلات X وY وZ من الانواع Single وDoubleوDecimal علي الترتيب فاكمل الجدول موضحا السبب
    السبب القيمة المخزنة النوع المتغير
    Single X
    Double Y
    Decimal Z

    (4)قواعد تكوين الاسماء في ال VB.net:-
    أولا: قواعد يجب الالتزام بها :-
    1. يجب ان يبدأ الاسم بحرف من حروف الانجليزية A……Z a……z
    2. يأتى بعد الحرف الاول أى عدد من الحروف او الارقام
    3. لايسمح ان يحتوى على رموز او علامات او مسافات ماعدا علامة ال Underscore _
    4. ممنوع استخدام الكلمات المحجوزة فى VB.net مثل Data – Double Dim-Print-Data
    ثانيا : قواعد يستحسن الالتزم بها :-
    1. اختر اسماء ذات معنى مناسب
    2. فى الكلمات التى تتكون من مقطعين يمكن ان يبدأ كل مقطع بحرف Capital
    3. يفضل ان يبدأ الاسم بـ 3 احرف تعطى انطباع عن نوع المتغير
    FirstName Ahmed2000 PopulationOfEgypt Spent_mony امثلة لأسماء صحيحة
    2ndWorldWar Spen.Mon Birth Day Double امثلة لأسماء غير صحيحة
    في حالة استخدام اسم خطأ يعطي synatax error

    (6)الثوابت : طريقة لاعطاء اسماء للخلايا التي تحتوي قيم لا تتغير اثناء تشغيل البرنامج
    الثوابت الجوهرية هى الثوابت الموجودة فى بناء و جوهر نظام ال VB.net أى يستطيع البرنامج التعامل معها بدون اعلان مثال مجموعة الالوان Color.Black Color.Blue Color.Red
    طريقة الاستعمال TxtX.ForeColor = Color.Blue

    (7)المتغيرات طريقة لاعطاء اسماء للخلايا التي تحتوي قيم تتغير اثناء تشغيل البرنامج
    Dim ChildWeight as Integer
    Dim Population as Integer
    Dim Name as String
    Dim Address as String = "Cairo"
    Dim UnitPrice as Decimal = 123.5
    لاحظ ان :- 1- لابد من استخدام كلمة Dim للإعلان عن المتغيرثم اسم المتغير ثم as ثم النوع
    2-يمكن ان تكتب ( =) و بعدها قيمة و هذه القيمة ستكون قيمة البداية أو يمكن ان تهملها و لا تستخدم (=) و فى هذه الحالة المتغيرات الرقمية تبدأ بقيمة صفر و المتغيرات الحرفية ستكون فارغة
    الاعلان عن اكثر من متغير باستخدام امر Dim واحد
    Dim UnitPrice as Decimal = 123.5,Name as Address = " Cairo "
    Dim ChildWeight, Population as Integer
    Dim Name as String
    (Coolامر التخصيص ( الاحلال ) :-
    ان اهم دور للمتغيرات هو تخزين البيانات بها ولكى نخزن قيمة فى متغير نستخدم امر التخصيص
    Variable Name = Value
    علامة = تسمى معامل التخصيص
    ( اى يتم حجز مكان فى الذاكرة يسمى باسم المتغير و توضع داخله القيمة )
    يجب مراعاة الاتى:- (1)اسم المتغير الذى نريد التخزين فيه يكون شمال (=)
    (2)القيمة المراد تخزينها تكون يمين (=) وتكون من نوع ملائم لنوع المتغير
    (3)القيمة يمكن ان تكون :-
    قيمة مجردة X=5 حيث يتم تخزين قيمة 5 في المتغير X
    متغير اخر X=Y حيث يتم تخزين قيمة Y في المتغير X
    عملية حسابية X=2Y+Z حيث يتم حساب القيمة 2Y+Z ثم تخزن في X
    1- المتغيرات التي على يمين = لا يحدث بها اي تغيير
    2- مفهوم العلامة = في امر التخصيص يختلف نهائيا عن مفهومها في المعادلة الرياضية
    حيث الصيغة X+3=10 صحيحة كمعادلة رياضية وليست صحيحة كامر تخصيص لوجود عملية حسابية شمال =والصيغة X=X+1 غير صحيحة كمعادلة رياضية وصحيحة كامر تخصيص

    (9)استعمال امر التخصيص مع المتغيرات الحرفية String
    من العمليلت التي نقوم بها على المتغيرات الحرفية عملية ربط اكثر من قيمة حرفية او متغير حرفي ببعضها لتكوين متغير حرفي واحد هذا الربط يتم باستعمال & الذي يسمى معامل الربط
    FirstName ="Hany"
    SecondName = "Ahmed"
    Fullname = "Welcome"&FirstName&" "&SecondName
    تكون النتيجة Welcome Hany Ahmed
    - " " تعنى انه سيترك مسافة فارغة مقدارها مسافة واحدة او عدة مسافات و" " تعنى قيمة حرفية فارغة مثال اكمل الجدول التالي
    TaxRate Price UnitPrice Quantity Statement
    Dim Quantity As Integer = 100
    Dim UnitPrice As Decimal = 5.5
    Dim Price As Decimal
    Dim TaxRate = 0.10
    Price = Quantity * UnitPrice
    Price = Price – Price * TaxRate
    UnitPrice = 6.2
    Price = Quantity * UnitPrice
    Price = Price – Price * TaxRate
    مثال قم بتتبع مجموعة الاوامر التالية :
    Z Y X Statement
    Dim X As Short
    Dim Y As Short
    Dim Z As Short
    X = 10
    X = 2 * X + 1
    Y = X - 8
    Z = Y /4
    Z = Z + 4

    Dim X As Short
    Dim Y As Short
    Dim Z As Short
    X = 10
    X = 2 * X + 1
    Y = X - 8
    Z = Y /4
    Z = Z + 4.

    مثال تتبع مجموعة الاوامر الاتية :
    Dim FirstName As String
    Dim LasttName As String
    Dim Message As String
    FirstName = “Hany”
    LastName = “Ahmed”
    Message = “Welcome ” & FirstName & “ “ & LastName

    Message LastName FirstName Statememet
    Dim FirstName As String
    Dim LasttName As String
    Dim Message As String
    FirstName = “Hany”
    LastName = “Ahmed”
    Message = “Welcome ” & FirstName &“ "& LastName

    (10)التحويل بين الانواع المختلفة للبيانات
    تختلف طريقة تخزين القيمة الحرفية "123" اختلاف تام عن طريقة تخزين القيمة العددية 123 فالقيمة الحرفية "123" تخزن في 3 خلايا اما القيمة العددية 123 يمكن ان تخزن في خلية واحدة
    اولا تحويل البيانات الحرفية الي بيانات عددية
    - يمكننا اجراء عمليات حسابية باستخدام المتغيرات و الثوابت و الخصائص object مادامت هذه المتغيرات و الثوابت والخصائص من الانواع العددية
    - ولكن عند ادخال البيانات الى البرنامج فاننا ندخلها عن طريق اداة الكتابة ( Text Box )
    - وبرنامج ال VB.net يتعامل مع هذه البيانات على انها بيانات حرفية و ليس عددية اى لا يمكن اجراء العمليات الحسابية عليها مباشرة ولحل هذه المشكلة لابد من تحويلها الي بيانات عددية
    - لتحويل البيانات الحرفية الى عددية نستخدم Parse Method
    - كل انواع البيانات العددية التي تستخدم في الاعلان عن المتغيرات مثل integer و decimal ما هي الا فئات class اي لها خصائص و طرق(وسائل) وجميعها تشترك في ان لها Parse Method
    الشكل العام لــ Parse Method
    1. لتحويل قيمة حرفية الي عدد صحيح Integer نستخدم (القيمة الحرفية ) Integer.Parse
    2. لتحويل قيمة حرفية الى عدد عشرى Decimal نستخدم (القيمة الحرفية ) Decimal.Parse
    القيمة الحرفية قد تكون خاصية اداة متغير حرفي او ثابت اما نتيجة قيمة التحويل فهي قيمة عددية
    اذا صادفت Parse Method اي حرف-علامة لا يمكن تحويلها لرقم فان التحويل يتتوقف ويظهر رسالة خطأ
    مثال
    لديك اداتان من ادوات الكتابة الاولي(txtBooksQuantitly) عدد الكتب ، الثانية(txtUnitPric) سعر الكتاب و مطلوب حساب الثمن الاجمالى ووضعه في متغير رقمي(TotalPrice)
    الحل
    Dim BooksQuantitly as Integer
    Dim UnitPric as Decimal
    Dim TotalPrice as Decimal
    BooksQuantitly = Integer. Parse (me . txtBooksQuantitly. Text )
    UnitPric = Decimal. Parse (me . txtUnitPric. Text )
    TotalPrice = BooksQuantitly * UnitPric
    لاحظ ان :-
    داخل الاكواد يمكن كتابة بعض الاسطر التى تساعد المبرمج و لكن المترجم او المفسر يهملها ولا يلتفت اليها وتسمى تعليقات وهذه الاسطر تكتب امامها ( ' ) مثل ' calculate the total price
    ثانيا تحويل البيانات العددية الي بيانات حرفية
    لاظهار النتائج يتم اظهارها في الاداة Label او TextBox وعليه لابد ان تكون حرفية اي تتحول من عددي الى حرفي باستعمال ToString ( )وما بين القوسين يسمي معامل الدالة argument وفي حالة عدم وجود شئ داخل الاقواس يكون البيان غير مصاغ unformatted
    الصيغة العامة هي txtResult.Text=xInteger.ToString()
    مثال
    لديك اداتان من ادوات الكتابة الاولي(txtBooksQuantitly) سعر الكتاب ، الثانية(txtUnitPric) عدد الكتب و مطلوب حساب الثمن الاجمالى ووضعه في متغير رقمي(TotalPrice) ثم اظهار النتيجة في اداة الكتابة txtResult الحل
    Dim BooksQuantitly as Integer
    Dim UnitPric as Decimal
    Dim TotalPrice as Decimal
    BooksQuantitly = Integer. Parse (me . txtBooksQuantitly. Text )
    UnitPric = Decimal. Parse (me . txtUnitPric. Text )
    TotalPrice = BooksQuantitly * UnitPric
    txtResult.Text = TotalPrice.To string ( )
    ثالثا التحويل بين انواع البيانات العددية : -
    ***التحويل المباشر ( التلقائى )
    - يستخدم عند تحويل من نوع عددى ذا سعة تخزينية صغيرة الى نوع عددى ذا سعة تخزينية اكبر
    - نعنى بالسعة التخزينية هنا عدد خلايا لذاكرة
    مثال :- اذا ردنا تحويل المتغير ( Number1 ) من النوع Decimal الى المتغير ( Number 2) وهو من النوع Integer كالآتى :- Number 1 = Number 2
    انواع التحويلات التى يمكن إجراؤها بالطريقة المباشرة

    TO From
    Short – Integer – Long – Single – Double – Decimal Byte
    Integer – Long – Single – Double – Decimal Short
    Long – Single – Double – Decimal Integer
    Single – Double – Decimal Long
    decimal – Double single
    decimal double
    ملاحظات :-
    التحويل المباشر لا يصلح فى حالتين :
    1. تحويل البيانات من النوع Double الى اى نوع اخر
    2. تحويل البيانات التى تحتوى على كسور ( Single , Double ) الى النوع Decimal
    وفى هذه الحالات نستخدم التحويل غير المباشر

    ***التحويل الغير مباشر
    - يتم استخدامه عندما نحول نوع ذوسعة تخزينية كبيرة الى نوع اقل فى السعة التخزينية
    - اى يستخدم بين البيانات العددية التى لايمكنك اجراء التحويل المباشر عليها مثل تحويل النوع Double الى اى نوع اخر من انواع البيانات
    - و لتسهيل عملية التحويل الغير مباشر يتيح البرنامج للمبرمجين Class يسمى Convert Class يحتوى على وسائل Methods تبدأ اسماؤها بـ To للتحويل بين الانواع المختفلة
    Use Method الطريقة المستخدمة النوع المطلوب التحويل اليه To Convert to Data type
    ToInt16 Short
    ToInt32 Integer
    ToInt64 Long
    ToDecimal Decimal
    ToSingle Single
    ToDouble Double
    مثال :
    اكتب اوامر تخزين المتغيرات n1,n2,n3 من النوع single , Double ,Decimal على الترتيب في المتغيرات v1 ,v2, v3 من النوع Decimal , Integer ,Single على الترتيب
    الحل
    V1 = convert.ToDecimal (n1 )
    V2= convert.ToDecimal (n2 )
    V3= convert.ToDecimal (n3 )



    (11)العمليات الحسابية :-
    المعامل المؤثر العملية
    + جمع
    - طرح
    * ضرب
    / قسمة عادية
    \ قسمة اعداد صحيحة
    mod باقى القسمة
    ^ اسس
    ***قسمة الاعداد الصحيحة وباقي القسمة
    إذا قسمنا العدد الصحيح (Integer ) 48 على العدد الصحيح 5 فتكون النتيجه كالآتى :-
    1. قسمة عادية 48 / 5 =9.6
    2. قسمة اعداد صحيحة (اهمال باقي القسمة) 48 \ 5 = 9
    3. اذا اردنا الباقى فيمكن الحصول عليه باستخدام 48 mod 5 = 3
    *** الاسس :
    يستعمل ( ^ ) فى رفع عدد معين ( الاساس ) الى اس معين و تكون النتيجة من النوع Double
    فمثلا اذا كان X=5
    فإنه Y=X^5
    اذا Y = 25
    بشرط ان تكون Y من النوع Double
    ***ترتيب تنفيذ العمليت الحسابية :-
    ترتيب تنفيذ العمليات الحسابية داخل VB يتم كالآتى : حتى يتم الحصول على النتائج الصحيحة
    1. العمليات التى بين الاقواس ( الداخلية اولا ثم الخارجية )
    2. عمليات الاسس
    3. عمليات الضرب و القسمة ( الاولوية من اليسار ثم اليمين )
    4. عمليات قسمة الاعداد الصحيحة
    5. عمليات حساب باقى القسمة
    6. عمليات الجمع و الطرح ( الاولوية من اليسار الي ليمين )
    مثال :-
    ما هى نتيجة تنفيذ العمليات الاتية بافتراض القيم التالية للمتغيرات :-
    X = 2 Y = 3 Z = 4
    A) X * ( Y + 1 )
    B) Y^ X * X + Z *3
    الحل
    A ) 1- نستبدل كل متغير بقيمته 2* ( 3 + 1 ) B)1- نستبدل كل متغير بقيمته 3^ 2 * 2 + 4 * 3
    2-حساب ما بداخل الاقواس اولا 2 * ( 4 ) 2- يتم حساب الاس اولا 9 * 2 + 4 * 3
    3- تنفيذ عملية الضرب فيكون الناتج ( 8 ) 3- تنفيذ عملية الضرب التى في اليسار 18 + 4 * 3
    4- تنفيذ عملية الضرب التى في اليمين 18 + 12
    5- تنفيذ الجمع ليكون الناتج 30


    مثال
    • اكتب الاكواد اللازمة لمشروع يحتوى على نموذج (Form ) واحد الخاصية Name له هى Form1 اما الخاصية Text له هى Math
    • يحتوى هذا النموذج على اداتى كتابة هما TextFirst – TextScond
    • المطلوب عرض نتائج عمليات الجمع و الطرح و الضرب و القسمة و قسمة الاعداد الصحيحة و باقى القسمة و الرفع االى اس لمحتويات اداتى الكتابة في سبع ادوات Label هى
    LbLAdd – LbLSub – LbLMul – LbLDiv – LblDiv2 – LbLMod – LbLExp
    • عرض المعاملات الرياضية + , - , * , / , \ , mod , ^ في خصائص الادوات من Label 10 الى Label 16
    • اداة Button تحتوى على اوامر تنفيذ العمليات
    الحل
    1-تخطيط المشروع
    رسم واجهة المستخدم ( الشكل المقابل )
    2-كتابة المشروع
    أ – من الصفحة الرئيسية اختر قائمة File اختار New Project
    او من Star Page اختار Creat Project فى مربع RecentProject
    ب – يظهر مربع New Project
    من Project typ اختار Windows
    من Templaes اختار Windowes Application
    القيمة الخاصية الاسم
    نجعلها فارغة
    Center
    Micro soft sans serif
    Bold
    10 Text
    Text Align
    Font
    Fon Styl
    Font Size txtBox1
    نجعلها فارغة
    Center
    Micro soft sans serif
    Bold
    10 Text
    Text Align
    Font
    Fon Styl
    Font Size txtBox2
    First
    Second Text
    Text Label 1 – Label 2
    فارغة
    Fixed3d Text
    Border Styl Label 9 الى Label 3
    + ،- ،*،/ ، \ ، mod ، ^ Text Label 16 الى Label 10
    جـ – ادخل الاسم الذى اخترته للمشروع فى خانة Name و ليكن Math
    د – اضغط Ok
    3--تهيئة النموذج
    - تغيير ابعاده لتحصل على المساحة المناسبة
    - تغير خاصية Text وجعلها Math
    1-وضع الادوات على النموذج
    تتغير خصائص الادوات طبقا للجدول

    5. ضبط موقع الادوات على ال Form
    اما يدوي بالماوس او من قائمة Format _______> Align
    6. اكتب الاكواد للزر Buton
    انقر مرتين على الزر مما سيؤدى الى فتح Cod Window مكتوبا بها الاوامر الاولى و الاخيرة و ما عليك إلاكتابة الاتى :
    ‘Declare the local variables
    1 Dim First, Second, ad, subtract, Mul, Div, Div2 As Decimal
    2 Dim Modulus As Integer
    3 Dim Expon As Double
    ‘Convert the text strings to decimal
    4 First = Decimal.Parse(Me.txtFirst.Text)
    5 Second = Decimal.Parse(Me.txtSecond.Text)
    'Caculate the values of local variables
    6 ad = First + Second
    7 lblAdd.Text = ad.ToString()
    8 subtract = First - Second
    9 lblSub.Text = subtract.ToString()
    10 Mul = First * Second
    11 lblMul.Text = Mul.ToString()
    12 Div = First / Second
    13 lblDiv.Text = Div.ToString()
    14 Div2 = First \ Second
    15 lblIntDiv.Text = Div2.ToString()
    16 Modulus = First Mod Second
    17 lblMod.Text = Modulus.ToString()
    18 Expon = First ^ Second
    19 lblExp.Text = Expon.ToString()
    لاحظ ان :-
    كلمة Me تستعمل لتوفير وقت البرمجة و هى تعنى ان هذه الادوت توجد على نفس النموذج وعند كتابة كلمة Me وبعدها نقطة تظهر قائمة تحتوى على الكائنات و الخصائص و الطرق التى استعملت بهذا النموذج
    (12)مجموعة أوامر Try / Catch :-
    _ تستخدم لاكتشاف الاخطاء التى تحدث اثناء تشغيل البرنامج و التعامل معها
    _ بالرغم من ان VB . net يكتشف الاخطاء و يقوم بعرض رسائل
    _ لكن المبرمجين يفضلون استعمال Try / Catch لان هذا يتيح لهم التعامل مع الاخطاء بانفسهم و عرض رسائل اوضح للمستخدم
     الفكرة الاساسية لها :-
    Try
    مجموعة من الاوامر التى لابد ان ينفذها المستخدم بدون اخطاء
    Catch
    كود يكتب و لا ينفذ الا ي حالة حدوث اخطاء في الاوامر السابقة و غالبا يكون رسالة
    End Try
    بقية اوامر البرنامج
    - اذ قمنا بتنفيذ الاوامر بعد Try بدون اخطاء ينتقل البرنامج الي الاوامر بعد End Try مباشرة
    - اذا تم تنفيذ الاوامر بعد Try بأخطاء ينتقل البرنامج الي الاوامر بعد Catch ليعرض الرسالة الموجودة بها و لا يتابع تنفيذ الاوامر بعد ذلك تصحيح الخطأ
    مثال:- نفس السابق ويزيد
    • في حالة ادخال المستخدم بيانات غير الارقام تظهر رسالة One of the filds is not numeric , Pleace enter only numeric values "
    • في حالة ادخال المستخدم صفرا في الخانة الثانية تظهر رسالة" Second value must not be zero "


    الحل تكون الاكواد كلتالي :-
    ‘Declare the local variables
    1 Dim First, Second, ad, subtract, Mul, Div, Div2 As Decimal
    2 Dim Modulus As Integer
    3 Dim Expon As Double
    ‘Convert the text strings to decimal
    4 Try
    5 First = Decimal.Parse(Me.txtFirst.Text)
    6 Second = Decimal.Parse(Me.txtSecond.Text)
    7 Catch
    8 msg Box ( " One of the filds is not numeric , Pleace enter only numeric values " )
    9 End Try
    'Caculate the values of local variables
    10 ad = First + Second
    11 lblAdd.Text = ad.ToString()
    12 subtract = First - Second
    13 lblSub.Text = subtract.ToString()
    14 Mul = First * Second
    15 lblMul.Text = Mul.ToString()
    16 Try
    17 Div = First / Second
    18 lblDiv.Text = Div.ToString()
    19 Div2 = First \ Second
    20 lblIntDiv.Text = Div2.ToString()
    21 Modulus = First Mod Second
    22 lblMod.Text = Modulus.ToString()
    23 Catch
    24 msg Box ( " Second value must not be zero " )
    25 End Try
    26 Expon = First ^ Second
    27 lblExp.Text = Expon.ToString()


    قال صلى الله عليه وسلم " من قال حين يسمع المؤذن أشهد أن لا إله إلا الله وحده لا شريك له وأن محمداً عبده ورسوله، رضيت بالله ربا وبمحمد رسولا، وبالاسلام دينا غفر له ذنبه "




    الفصل الثاني
    الشروط والقرارات

    (1)استخدام التعبيرات الشرطية
    التعبير الشرطي : هو عبارة عن صياغة للعلاقة بين كميتين أي من هاتين الكميتين من الممكن أن تكون متغير أو خاصية أو ثابت أو قيمة مجردة .للتعبير الشرطي قيمة تتوقف على صحة العلاقة أو عدم صحتها .فإذا كانت العلاقة غير صحيحة فتكون قيمة التعبير الشرطي False .والعكس إذا كانت العلاقة صحيحة فتكون قيمة التعبير الشرطي True .
    - لصياغة التعبيرات الشرطية فإننا نقوم باستعمال بعض المعاملات تسمى معاملات المقارنة
    مثال
    A = 50 B = 60
    النتيجة مثال العلاقة العلامة
    A > B اكبر من >
    A < B اصغر من <
    A = B يساوي =
    A < > B لا يساوي < >
    A>=B اكبر من او تساوي >=
    A<=B اصغر من او تساوي <=

    (2)قاعدة استخدام الأمر If ……. Then ……. Else
    If condition ( شرط) Then
    Statement Block1 ( مجموعة الأوامر رقم 1)
    Else
    Statement Block2 ( مجموعة الأوامر رقم 2)
    End If
    Statement Block3 ( مجموعة الأوامر رقم 3)

    1. إذا كانت قيمة الشرط True سيقوم البرنامج بتنفيذ مجموعة الأوامر رقم 1 ويهمل مجموعة الأوامر رقم 2 ثم يذهب لتنفيذ مجموعة الأوامر رقم 3 .
    2. إذا كانت قيمة الشرط False سيقوم البرنامج بتنفيذ مجموعة الأوامر رقم 2 ويهمل مجموعة الأوامر رقم 1 ثم يذهب لتنفيذ مجموعة الأوامر رقم 3 .
    • الشكل العام للأمر If ……. Then ……. Else
    If condition1 Then
    Statement block 1
    Else If condition2 Then
    Statement block 2
    ………………………..
    ………………………..
    Else
    Statement block n
    End If
    قال صلى الله عليه وسلم " من توضأ فأحسن الوضوء، خرجت خطاياه من جسده حتى تخرج من تحت أظافره"

    الحل


    Dim HoursWorked, OverTime, Salary as Decimal
    HoursWorked=Decimal.parse(textbox1.text)
    If HoursWorked > 40 Then
    OverTime = 10 * (HoursWorked -40)
    Salary = 40* 5 + OverTime
    Else
    Salary = 5 * HoursWorked
    End If
    MsgBox(“The salary is equal to “ & Salary)


    (3)قاعدة استخدام الامر If ……. Then البسيط

    If condition Then
    Statement block 1
    End If
    Statement block 2
    1. إذا كانت قيمة الشرط True سيقوم البرنامج بتنفيذ مجموعة الأوامر رقم 1 ثم يذهب لتنفيذ مجموعة الأوامر رقم 2 .
    2. إذا كانت قيمة الشرط False فان لبرنامج سيذهب مباشرة لتنفيذ مجموعة الأوامر رقم 2 .
    مثال
    If Age > 16 Then
    MsgBox(“You can get an ID card”)
    End If
    • الفرق بين If ……. Then ……. Else و If ……. Then
    1. الأمر If ……. Then ……. Else
    سيتم استخدامه في حاله ما إذا كان هناك بديلين ( أ، ب ) وكنا نريد تنفيذ حد البديلين اذا كانت قيمة الشرط True ويتم تنفيذ البديل الأخر إذا كانت قيمة الشرط False .
    2. الأمر If ……. Then
    سيتم استخدامه في حاله ما إذا كان هناك بديل واحد ( أ) بمعنى انه عند قيمة معينة للشرط يتم تنفيذ البديل (أ) أما عند القيمة الأخرى فلا يتم عمل شئ .


    (4)الشروط المركبة
    تستخدم في حالة ما إذا كنا سنستخدم قرارا معينا بناءا على تحقق شرطين وليس شرط واحد
    ويمكننا عمل الشرط لمركب بالربط بين أكثر من شرط بأحد المعاملات التي تسمى المعاملات المنطقية وهي
    Or, And, Not

    جدول or اذا كان احد الشرطين صحيح او احداهما صحيح يكون الشرط المركب صحيح
    النتيجة A or B B A
    True True True
    True False True
    True True False
    False False False
    جدول and اذا كان كلا من الشرطين صحيح يكون الشرط المركب صحيح
    النتيجة A and B B A
    True True True
    False False True
    False True False
    False False False
    جدول not اذا كان صحيح صحيح يكون الشرط المركب خطأ والعكس بالعكس
    Not A A
    False True
    True False
    مثال
    تقوم احد الشركات بتحديد قيمة الاجر لكل ساعة عمل لوظيفة معينة طبقا لعدد سنوات الخبرة كما هو موضح













    والمطلوب كتابة معالج حدث النقر Click Event Hander بحيث يتيح لمستخدم البرنامج ادخال عدد سنوات الخدمة وعدد ساعات العمل بحساب كل من الاجر للساعة ويقوم بتخزينه في متغير WageRate والراتب الكلي Salary ويقوم بعرضهما في مربع رسالةعلى ان تكون الواجهة كما بالشكل

    قال صلى الله عليه وسلم " الصلوات الخمس، والجمعة الى الجمعة، ورمضان الى رمضان مكفرات لما بينهن اذا اجتنبت الكبائر"















    الحل

    ‘Variables declaration
    1 Dim YearsOfServiceShort As Short
    2 Dim HoursWorkedDecimal As Decimal
    3 Dim WageRateDecimal As Decimal
    4 Dim SalaryDecimal As Decimal
    5 Try
    6 YearsOfServiceShort = Short.Parse(Me.txtYears.Text)
    7 HoursWorkedDecimal = Decimal.Parse(Me.txtHoursWorked.Text)
    8 If YearsOfServiceShort < 5 Then 'Years < 5
    9 WageRateDecimal = 5
    10 ElseIf YearsOfServiceShort < 10 Then ' 5<= Years <10
    11 WageRateDecimal = 7
    12 ElseIf YearsOfServiceShort < 15 Then ' 10<= Years <15
    13 WageRateDecimal = 10
    14 ElseIf YearsOfServiceShort < 20 Then ' 15<= Years <20
    15 WageRateDecimal = 12
    16 Else
    17 WageRateDecimal = 15 ' Years >= 20
    18 End If
    19 SalaryDecimal = WageRateDecimal * HoursWorkedDecimal
    20 MsgBox("Your Wage Rate = " & WageRateDecimal & vbCrLf & _
    21 "Your salary = " & SalaryDecimal)
    22 Catch
    23 MsgBox("Check your inputs ")
    24 End Try

    VbCrLf تعني اذهب لسطر جديد اي ما قبلها يكتب في سطر وما بعدها في السطر التالي
    ـــــ تعني ان السطر الثاني في الامر هو استكمال للسطر السابق



    (5)مقارنة القيم والمتغيرات الحرفية( String )
    **نستطيع ان نقارن المتغيرات الحرفية بمتغيرات او ثوابت او خصائص حرفية لمتعيرات اخرى
    **تتم عملية المقارنة بمقارنة الرمز الموجود في اقصى اليسار لكلا المتغيرين ونتقدم رمزا رمزا حتى نجد رمزين مختلفين فتتوقف عملية المقارنة
    **يتم مقارنة المتغيرات الحرفية عن طريق تحديد رتبة كل رمز طبقا لطريقة تخزين الرموز في ذاكرة الحاسب وهذه الطريقة تسمى
    ANSI= American National Standards Institute
    وهي تعطي كل حرف أو رقم أو رمز خاص رتبة معينة وهذه الرتبة هي رقم ثابت لا يتغير كما في الجدول






    i True
    ii False
    iii True
    iv False





    قال صلى الله عليه وسلم " ينزل ربنا تبارك وتعالى كل ليلة الى السماء الدنيا حين يبقى ثلث الليل الأخير يقول: من يدعوني فأستجب له،من يسألني فأعطيه، من يستغفرني فأغفر له"

    (6)استخدام الامر IF مع الادوات Radio Button CheckBox GroupBox
    • الاداة Radio Button
    تتيح للمستخدم مجموعة من البدائل لاختيار واحدة منها فقط
    تستخدم في عرض البدائل المتاحة في البرنامج على ان يقوم المستخدم باختيار بديل واحد فقط
    • خصائص الاداة Radio Button


    مثال علي أشكال Radio Button










    Radio1.checked=True



    Radio3.checked=True



    • الاداة CheckBox
    تتيح للمستخدم مجموعة من البدائل لاختيار أي عدد منها
    • خصائص الاداة CheckBox


    مثال





    • الاداة GroupBox
    - تستخدم لتنظيم الأدوات علي النموذج .
    - تسمح للمبرمج أن يقسم عدد من الأداة Radio Button و Checked Box إلي مجموعات ويقوم لمستخدم باختيار واحدة فقط من كل مجموعة .
    • خصائص الاداة GroupBox



    مثال


    Group1.Text="sex(الجنس )"
    Group2.Text="Birth Place( محل الميلاد)"
















    قال صلى الله عليه وسلم " فتنة الرجل في أهله وماله وجاره يكفرها الصلاة والصوم والصدقة......"

    مثال يريد مدير معمل تحاليل كتابة برنامج يستطيع من خلاله تحرير فواتير بحيث يسمح للمشغل ان يدخل اسم المريض وتحديد التحاليل ويجب عدم اصدار فاتورة الا بعد ادخال الاسم وفي حالة عدم ادخال اسم يظهر رسالة خطأ ويبين الجدول الخدمات المتاحة واسعارها والشهل 1 يبين واجهة المستخدم والشكل 2 في حالة عدم ادخال اسم والشكل 3 الشكل النهائي بعد ادخال جميع البيانات



    الجدول (3)


    (2) (1)


    الحل
    lblTotal.Text = ""
    If txtName.Text = "" Then
    MessageBox.Show("Please enter a name and check at least one item",
    "Incomplete information", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
    Else
    Dim total As Decimal = 0.0
    If chkCBC.Checked = True Then
    total = total + 21.0
    End If
    If chkTIC.Checked = True Then
    total = total + 7.5
    End If
    If chkRBC.Checked = True Then
    total = total + 5.5
    End If
    If chkHB.Checked = True Then
    total = total + 5.0
    End If
    lblTotal.Text = total
    End If

    قال صلى الله عليه وسلم " ....ومن صام رمضان إيمانا واحتساباً غُفر له ما تقدم من ذنبه "







    الفصل الثالث
    أوامر التكرار

    - في هذا الفصل سيتم تقديم أوامر التكرار وهي أوامر تتحكم في إعادة تنفيذ عمل معين أو مجموعة من الأوامر حتى يتحقق شرط معين.
    (1)الأمر Do While…………Loop
    يتبع القاعدة التالية:

    في كل مرة يصل البرنامج إلي Do While يقوم بتقييم الشرط.
    أ- لو كان الشرط خاطئاً "False" فإن التنفيذ يبدأ عند أول أمر بعد كلمة Loop
    ب-لو كان الشرط صحيحا "True" فإنه يقوم بتنفيذ الأوامر ابتداء من الأمر الذي يلي الشرط وحتى أخر أمر قبل كلمة Loop وعندما يصل البرنامج إلي كلمة Loop فإنه يعود مرة أخري إلي Do while حيث يتم تقييم الشرط مرة أخري وطبقا لقيمة الشرط فإما أن تكون True فيستمر التكرار أو تكون False فينتهي التكرار كما في الشكل.




    مثال: مطلوب أن تقوم بجمع الأعداد الفردية من (1) إلي (Limit) حيث Limit هو رقم صحيح موجود في الأداة Text Box المسمى TXTLimit
    الحل:




    Dim x, total, limit As Integer
    limit = Integer.Parse(txtLimit.Text)
    x = 1
    Do While x <= limit
    total = total + x
    x = x + 2
    Loop
    Me.Label2.Text = Format(total, "##")
    ملحوظة
    في السطر الثامن استخدمنا الدالة Format والتي يمكن استخدامها لتحديد شكل المخرجات

    Result for x = 3.456 Result for x = 3.4 Format function
    Format(x)
    (Format(x, “00.0
    Format(x, “##.##”)
    Format(x, “##.00” )
    Format(x, “00.##” )

    قال صلى الله عليه وسلم " ما يصيب المؤمن من وصب ولا نصب ولا سقم ولا حزن حتى الهم يهمه إلا يكفر به من سيئاته "



    (2)الامر For ………. Next

    على خلاف أوامر التكرار السابقة والتي لا نعرف فيها عدد مرات التكرار فان الأمر For ………. Next يستعمل في حالة معرفة عدد مرات التكرار مسبقاً .


    الأمثلة:
    قم بتغيير قيم العداد(Counter ) باستعمال For ………. Next من 5 الى 50 بزيادة 2


    قم بتغيير قيم العداد(Counter ) باستعمال For ………. Next من 1 الى 100 بزيادة 1


    قم بتغيير قيم العداد(Counter ) باستعمال For ………. Next من 100 الى 2 بنقص 2


    قم بتغيير قيم العداد(Counter ) باستعمال For ………. Next بالترتيب (11 , 13 ,15 ,17 ,19)


    قم بتغيير قيم العداد(Counter ) باستعمال For ………. Next بالترتيب (49 , 42 ,35 ,28 ,21)


    قال صلى الله عليه وسلم " من جلس في مجلس فكثر لغطه فقال قبل أن يقوم من مجلسه ذلك سبحانك اللهم وبحمدك أشهد أن لا إله إلا أنت أستغفرك وأتوب إليك إلا غفر الله له ما كان في مجلسه"








    • الاداة ListBox
    - هي واحدة من الأدوات التي ترتبط غالباً بالتكرار .
    - وتتيح لك هذه الأداة أن تنشئ أو تعرض قائمة من العناصر وان تختار منها . وفي حالة ما اذا كان عدد الصفوف اكبر من يعرض داخل المستطيل يقوم v.b. تلقائيا باضافة شريط منزلقScroll Bar الى يمين الاداة Listbox



    لاحظ ان index يأخذ الارقام من الصفر الي count-1 اي العنصر الاول صفر والذي يليه 1 وهكذا







    مثال 1:


    اكتب الاكواد اللازمة لمايأتي
    1- عند الضغط على يتم ادخال ايام الاسبوع في الاداة ListBox المسماه lstDayays
    2- عند الضغط على btnCopy يتم ادخال العنصر الذي تم اختياره الي الاداة ListBox المسماه lstChosen
    3- عند الضغط على btnClearDays يتم ازالة كل العناصر المجودة في lstDayays
    4- عند الضغط على btnClearDays يتم ازالة كل العناصر المجودة في lstChosen
    الحل
    1- نضغط مرتتين على btnAddDays ونكتب الاكواد
    1 Me.lstDays.Items.Add("Saturday")
    2 Me.lstDays.Items.Add("Sunday")
    3 Me.lstDays.Items.Add("Monday")
    4 Me.lstDays.Items.Add("Tuesday")
    5 Me.lstDays.Items.Add("Wednesday")
    6 Me.lstDays.Items.Add("Thursday")
    7 Me.lstDays.Items.Add("Friday")
    2- نضغط مرتتين على btnCopy ونكتب الاكواد
    8 Me.lstChosen.Items.Add(Me.lstDays.SelectedItem)
    3- - نضغط مرتتين على btnClearDays ونكتب الاكواد

    9 Me.lstDays.Items.Clear()
    4-- نضغط مرتتين على btnClearDays ونكتب الاكواد
    10 Me.lstChosen.Items.Clear()

    دخل رسول الله صلى الله عليه وسلم على أم السائب أو أم المسيب فقال " مالكِ....تزفزفين ؟ قالت " الحمى لا بارك الله فيها ، فقال " لا تسبي الحمى فإنها تذهب خطايا بني آدم كما يُذهب الكير خبث الحديد"






    مثال 2 :

    Amount = principal ( 1 + rate/100 )n
    حيث ان القيمة المستحقة =amount و قيمة رأس المال =principal ومعدل الفائدة =rate وعدد السنوات =n
    الكود الخاص ب Button1
    'declare variables to store user inputs
    1 Dim principal, interest, years, amount As Decimal
    2 Dim year As Integer
    3 Dim output As String
    'convert text to decimal
    4 principal = Val(Me.txtPrinc.Text)
    5 interest = Val(Me.txtInterest.Text)
    6 years = Val(Me.txtYears.Text)
    'write heading in the list box
    7 output = "Amount" & ControlChars.Tab & ControlChars.Tab & "Years"
    8 Me.lstAmount.Items.Add(output)
    'Calculate the amount from 1 year to the value of years variable
    9 For year = 1 To years
    10 amount = principal * ((1 + interest / 100) ^ year)
    11 output = Format(amount, "###.00") & ControlChars.Tab &
    12 ControlChars.Tab & year
    13 Me.lstAmount.Items.Add(output)
    14 Next
    15 Me.txtPrinc.Focus() 'focus on txtPrinc text box
    الكود الخاص ب Button2
    16 Me.txtPrinc.Text = "" 'clear the Principal
    17 Me.txtInterest.Text = "" 'clear the interest
    18 Me.txtYears.Text = "" 'clear the number of years
    19 Me.lstAmount.Items.Clear() 'clear the list box
    20 Me.txtPrinc.Focus()
    لاحظ:
    Val دالة تستخدم لتحويل المتغيرات الحرفية إلي رقمية ولكن تتجاهل إدخال المستخدم لرمز مثل$ ولا تظهر رسالة خطأ
    Focus ( ) تستخدم لنقل الانتباه إلي Text Box .
    Controlchar.tab يستخدم لعمل tab 5مسافات بين الكلام في ال MsgBox .

    الفصل الرابع
    الميقاتي Timer
    • مقدمة
    عزيزي الطالب تقع الأحداث (Events) عندما يقوم مستعمل البرنامج بعمل ما ، مثل الضغط علي زر أو زر راديو . ولكن في بعض الأحيان تكون في احتياج لان تجعل بعض الأحداث تقع بعد فترة زمنية معينة وبدون تدخل مستعمل البرنامج ، وهذا تستطيع عمله باستعمال الكائن Timer والحدث Tick .
    في حقيقة الأمر الكائن Timer هو ساعة توقيت غير مرئية تتيح لك التعامل مع ساعة النظام (System Clock) من داخل البرنامج التي تقوم بتنفيذها .
    (1)استعمال الكائن timer
    عندما يكون لديك timer على النموذج فانه ينشط علي فترات زمنية متساوية . وهذه الفترات تسمى (Intervals) وكنتيجة لهذا النشاط يقع الحدث Tick ويمكنك تنفيذ مجموعة من الأوامر .
    ونستنتج من ذلك الأتي :

    الكائن Timer
    الحدث Tick ( يقع بعد فترة زمنية معينة بدون تدخل المستخدم )
    الخاصية 1. Interval لتحديد الفترة الزمنية بالمللي ثانية
    2. Enabled (التمكين) (تستخدم لكي ينشط الــ Timer بعد كل فترة زمنية ) ولابد أن تكون قيمتها True ولإيقاف الــ Timer عن العمل نجعلها False .

    (2)التكوين Date Time

    عند الإعلان عن متغير من النوع Date يكون لدينا تكوين يسمى Date Time هذا التكوين له خصائص ووسائل نذكرها في الجدولين الآتيين :
    مثلا: Dim X as Date








    لا يمكن تغيير الوقت والتاريخ لكائن Date بعملية جمع وطرح عادية


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



    كود ال timer
    Me.lblCurrentTime.Text = Date.Now
    كود button1

    Close()


    قال صلى الله عليه وسلم " العمرة الى العمرة كفارة لما بينهما والحج المبرور ليس له جزاء إلا الجنة"



    مثال
    تصميم ساعة توقيت ذات فترة زمنية متغيرة باستخدام الكائن Timer



    كود Timer1
    Me.lblCurrentTime.Text = Date.Now
    كود Button1
    Close()

    كود btnStart

    Me.Timer2.Interval = Integer.Parse(Me.txtInterval.Text)
    Me.Timer2.Enabled = True
    كود btnStop
    Me.Timer2.Enabled = False
    Me.btnStart.Text = "Continue"
    كود Timer2

    Static x As Integer = 0
    x = x + 1
    Me.lblCount.Text = Format(x)
    كود btnReset

    Me.Timer2.Enabled = False
    Me.lblCount.Text = "0"
    Me.btnStart.Text = "Start"

    تم استخدام Static بدلا من Dim حتى يتم الاحتفاظ بقيمتها طوال البرنامج اما Dim يتم اعطاءها قيمة ابتدائية عند كل استدعاء للبرنامج الفرعي





    الشهادة الاعدادية

    سبحانك اللهم وبحمدك أشهد أن لا إله إلا أنت أستغفرك وأتوب إليك

      الوقت/التاريخ الآن هو الإثنين أكتوبر 16, 2017 7:53 pm