الفصل الاول
تمثيل البيانات
الفصل الاول
تمثيل البيانات
عندما يتم ادخال البيانات بواسطة وحدات الادخال فانها تخزن داخل الذاكرة الداخلية
وتتكون ذاكرة الحاسب من ملايين الخلايا ( الاماكن ) المتساوية وتسمى هذه الخلايا بالبايت (byte) وتحمل هذه الخلايا ارقاما متسلسلة تبدأ من الصفر
تمثل عدد هذه الخلايا حجم ذاكرة الحاسب
اى ان كلما زاد عدد هذه الخلايا (byte) كانت ذاكرة الجهاز اكبر وبالتالى فان سعة تخزين البيانات تكون اكبر
تقاس ذاكرة بالكيلوبايت
***********************************************
نجد عند تخزين بيان ما فى الذاكرة نجد انه يشغل مساحة حجمها خلية واحدة ( واحد بايت) وبيان اخر يشغل مساحة حجمها 3 خلايا ( 3 بايت ) نجد هذا الاختلاف فى المساحة المحجوزة للبيان يرجع الى نوع البيان المخزن داخل هذه الخلايا
ومن الممكن ان يكون البيان المخزن داخل هذه الخلايا ثابت او متغير
ثابت : هوالبيان الذى لاتتغير قيمته اثناء تشغيل البرنامج
متغير : هو البيان الذى تتغير قيمته اثناء تشغيل البرنامج
انواع البيانات تنقسم الى
أعداد حروف تاريخ منطقى
عدد صحيح عدد عشرى
Byte single char date boolean
Short double string
Integer decimal
Long
**************************************************
الجدول التالى يوضح نوع البيان وحجمه الذى يشغله فى الذاكرة وطبيعة البيان المخزن داخله ودرجة الدقة
نوع البيان الحجم الذى يشغله فى الذاكرة بالبايت طبيعة البيان المخزن داخله درجة الدقة
(عدد الخانات)
Byte 1 من 0 الى 255 لا توجد
Short 2 من – 32768
الى 32767 5 ارقام
Integer 4 من -2147483648 الى 2147483647 10 ارقام
Long 8 اكثر من 2147483647 19 رقم
single 4 من 3810 الى 3810 7 ارقام
double 8 اكبر 3810 15 أرقام
decimal 16 مبلغ من المال 29 رقم
char 2 تخزين حرف واحد لا يوجد
string العديد من الخلايا تخزين اعداد من 0 الى
2 بليون حرف لا يوجد
date 8 تاريخ من 1/1/0001
الى 31/12/9999 لا يوجد
boolean 2 True or False
او yes or No لا يوجد
مثال توضيحى
لو اردنا تخزين العدد الصحيح 200 فاننا يمكن تخزينه فى كل من byte ,short , integer , long ولكن الاصح تخزينه من نوع byte لانه بذلك سيشغل مساحة اقل فى الذاكرة
مثال آخر
لو اردنا تخزين العدد 417 321456.15478961 داخل ثلاث متغيرات من نوع decimal , single , double
نجدان القيمة التى تخزن داخل متغير من نوع single هى : 321456.2
والقيمة التى تخزن فى متغير من نوع double هى 321456.154789614
والقيمة التى تخزن فى متغير من نوع decimal هى 321456.15478961417
**************************************************
الثوابت : هى طريقة لاعطاء اسماء للقيم التى لا تتغير اثناء تشغيل البرنامج
ويوجد فى البرنامج نوعين من الثوابت
أ – ثوابت جوهرية: وهى ثوابت موجودة فى بناء وجوهر نظام vb.net اى انها ثوابت سابقة التعريف يستطيع اى برنامج vb.net ان يستعملها مباشرة بدون الاعلان عنها مثال للثوابت الجوهرية ثوابت الالوان
ب- الثوابت المسماه : هى ثوابت يقوم المبرمج بتعريفها طبقا لاحتياجات البرنامج معنى ذلك انها غيرسابقة التعريف بالنسبة للبرنامج فيجب
الاعلان عنها قبل استعمالها فى البرنامج والا سيحدث خطا
ويسمى هذا الخطأ syntax error معناه خطأ فى قواعد البرمجة
*********************************************
الصيغة العامة للاعلان عن الثوابت فى البرنامج
يجب اعطاء قيمة للثابت كما هو موضح بأعلى فى التعريف
اهمية الاعلان عن الثوابت بدلا من استخدام قيمها مباشرة
1- السهولة فى تغير قيمة الثابت اذا اردنا ذلك
2- يصبح البرنامج مفهوما اكثر عند قرائته
***********************************************
المتغيرات :
هى القيم التى تتغير اثناء تشغيل البرنامج ويجب الاعلان عنها داخل البرنامج
الصيغة العامة للاعلان عن المتغيرات
*******************************************
عند كتابة اسم المتغير او الثابت يجب اتباع الاتى حتى لايحدث خطأ (syntax error )
1- يجب ان يبدأ الاسم بحرف من الحروف الانجليزية سواء captal او small
2- بعد الحرف الاول يمكن ان يأتى اى عدد من الحروف او الارقام او الرمز _ underscore باى ترتيب
3- لا يسمح ان يحتوى الاسم على اى رموز او علامات خاصة كالمسافة والنقطة وعلامة الاستفهام وعلامة التعجب ......... الخ
4- لا يسمح ان يكون الاسم من الكلمات المحجوزة فى vb.net مثل (double,date,dim,const )
ملاحظات
من المستحب ان يكون اسم المتغير او الثابت يدل على محتواه
اذا اردنا ان يكون اسم المتغير من مقطعين والمسافة غير مسموحة فى اسم المتغير فالحل نبدأ كل مقطع بكابتل
مثال : first name خطأ لوجود مسافة فى اسم المتغير
انما FristName صحيحة كاسم للمتغير ؛ وايضا frist_name صحيحة لان لايوجد مسافات والرمز المستخدم هو underscore
يفضل بعض المبرمجين ان يبدأ اسم المتغير بثلاثة احرف تعطى انطباعا بنوع المتغير مثال لو متغير اسمه frist وسيخزن به بيان من نوع integer فمن المستحسن ان يكون اسم المتغير Intfrist
***********************************************
يتحدد تلقائيا ثلاث خصائص لنوع المتغير فى اى برنامج عند اختيارنا لهذا المتغير وهذه الخصائص هى :
1- نوع البيانات التى يمكن تخزينها فيه
2- العمليات التى يمكن اجراؤها عليه
3- حجم الذاكرة الذى يحتاجه هذا المتغير
ما الفرق بين هذين التعريفين
Dim a as integer
Dim b as integer=20
اولا كلاهما تعريف لمتغير لانه بدأ بكلمة dim ولكن الاختلاف ان قيمة المتغير a الابتدائية هى صفر وقيمة المتغيرb الابتدائية هى 20
ما الفرق بين هذين التعريفين Dim a as string
Dim b as string= "sama"
كما شرحنا انهم تعريف لمتغير ولكن القيمة الابتدائية للمتغير a هى سلسلة حرفية فارغة "" والقيمة الابتدائية للمتغير b هى "sama"
هل السلسلة الحرفية "" تساوى السلسة الحرفية " "
الاجابة لا
لان "" عبارة عن سلسلة حرفية فارغة أما " " فهى سلسلة حرفية بها مسافات( طولها هو عدد المسافات)
***********************************************
مثال توضيحى
اكتب صيغة تعريف المتغيرات الاتية
المتغيرين a,b نوع البيان الذى سيخزن بداخلهم integer
المتغيرين c,d نوع البيان الذى سيخزن بداخلهم string
1- Dim a as integer
Dim b as integer
Dim c as string
Dim d as string
2- Dim a,b as integer
Dim c,d as string
3-Dim a,b as integer , c,d as string
الثلاث صور السابقة لتعريف المتغيرات كلها صحيحة ولكن نلاحظ فى الطريقة الاخيرة اننا اعلنا عن جميع المتغيرات باستخدم امر ..... واحد
*************************************************
ان اهم دور للمتغيرات فى البرنامج هو تخزين البيانات بها ولعمل ذلك نستخدم امرالتخصيص وهذا الامر يأخذ الشكل الاتى
القيمة = اسم المتغير
= تسمى معامل التخصيص
يجب ان تكون القيمة هى التى على يمين = ، واسم المتغير على شمال =
A = 10
10 = A
الصيغة الاولى صحيحة كأمر تخصيص لان معناها ان القيمة 10 سيتم تخزينها داخل المتغير A
اما الثانية الصيغة خطأ لان معناها ان قيمة المتغير A سيتم تخزينها فى 10 نفهم من ذلك ان القيمة الموجودة على يمين = هى التى ستخزن فى المتغير الموجود على يسار =
يجب ان تكون القيمة المراد تخزينها من نوع ملائم لنوع المتغير الذى سيتم التخزين به
مثال :
Dim a as integer
a = mohamed
نجد فى المثال السابق اننا حجزنا مكان فى الذاكرة لمتغير اسمه a و سيتم تخزين بيانات عددية صحيحة بداخله ولكن هنا نلاحظ فى الخطوة الثانية انه تم ادخال بيان حرفى وهذا خطأ ولكن الصح مثلا a=7 عدد
القيمةالتى تخزن فى المتغير اما ان تكون
A=41- قيمة مجردة مثال
a = 2 , b = 5 - قيمة متغير اخر مثال2
ِa = b
قبل عملية التخصيص ( الاحلال ) بعد عمليةالتخصيص ( الاحلال )
a b a b
******************************
3- ناتج عملية حسابية مثال
a = 4, b = 7
a = b + 2
قبل عملية التخصيص ( الاحلال ) بعد عمليةالتخصيص ( الاحلال )
a b a b
نلاحظ فى 2 ،3 ان قيمة المتغيرات التى على يمين = لا تتغير وانما قيمة المتغيرات الموجودة على شمال = هى التى تتغير
وايضا ان القيمة الجديدة للمتغير تحل محل القيمة القديمة
مفهوم العلامة = فى امر التخصيص يختلف عن مفهومها فى المعادلات الرياضية
X + 1 = 3 مثال :
تمثل معادلة رياضية ولكن غير صحيحة كأمر تخصيص لوجود عملية حسابية على يسار =
X = x + 1
لا تمثل معادلة رياضية ولكنها صحيحة كأمر تخصيص ومعناها ان قيمة المغير الجديدة
تساوى قيمة المتغير القديمة +1 x لــ
*******************************************
1- تحديد القيمة الموجودة على يمين = كالاتى
أ- استبدال كل متغير او ثابت بقيمته
ب- اجراء العملية الحسابية واستخراج النتيجة
2- تخزين النتيجة فى المتغير على شمال =
*****************************************
كما اننا نقوم بتخزين ناتج العمليات الحسابية فى المتغيرات الرقمية باستخدام امر التخصيص فاننا نستطيع ايضا تخزين القيم الحرفية فى متغيرات حرفية باستعمال نفس الامر
وايضا كما اننا نقوم باجراء عمليات رياضية باستعمال المتغيرات الرقمية فاننا نستطيع بالمثل اجراء بعض العمليات على المتغيرات الحرفية
من اشهر العمليات التى يمكن ان نقوم بها على المتغيرات الحرفية عملية ربط اكثر من قيمة حرفية او متغير حرفى ببعضها لتكوين متغير حرفى واحد
هذا الربط يتم باستعمال الرمز & الذى يسمى معامل الربط
مثال :
"number of student" = "of student" & " "& "number"
*****************************************
التحويل بين الانواع المختلفة للبيانات
تختلف طريقة تخزين الانواع المختلفة من البيانات فى ذاكرة الحاسب كما يختلف ايضا
تختلف طريقة تخزين الانواع المختلفة من البيانات فى ذاكرة الحاسب كما يختلف ايضا حجم الذاكرة (عدد الخلايا) التى يتم التخزين بها . فمثلا تختلف طريقة تخزين القيمة الحرفية 123 اختلافا تاما عن طريقة تخزين القيمة الرقمية 123 فمثلا يتم تخزين القيمة الحرفية 123 فى ثلاث خلايا اما القيمة الرقمية 123 فمن الممكن تخزينها فى خلية واحدة
عند ادخال البيانات اثناء تشغيل البرنامج فاننا ندخلها عن طريق اداة الكتابة text وتكون هذه البيانات هى محتوى الخاصية (textbox)
ولكن الفيجول بيزيك يتعامل مع محتوى الخاصية على انها بيان حرفى وليس عددي فى هذه الحالة لايمكن اجراء عمليات حسابية على هذه البيانات مباشرة
ولذلك اذا اردنا اجراء العمليات الحسابية على البيانات المدخلة بواسطة اداة ...... فيجب تحويلها اولا الى قيم عددية ويتم ذلك من خلال استخدام دالة.................
الشكل العام لدالة .......................
لتحويل قيمة حرفية الى رقم عدد صحيح
Integer.parse(القيمة الحرفية التى تريد تحويلها
لتحويل قيمة حرفية الى رقم عددعشرى
Decimal.parse(القيمة الحرفية التى تريد تحويلها
*********************************************
تحويل البيانات الرقمية الى بيانات حرفية
كما سبق وشرحنا انه يجب تحويل القيمة المدخلة بواسطة اداة الى قيم عددية لاجراء العمليات الحسابية عليها فاننا ايضا لكى نظهر هذه البيانات فى اداة او اداة يجب تحويلها الى قيم حرفية ولعمل ذلك نستخدم الدالة
الشكل العام للدالة............
try/catch مجموعة اوامر
عنما يتم تحويل البيان المدخل بواسطة اداة ................ الى بيان رقمى بالطريقة السابقة فعندما يقوم مستخدم البرنامج بادخال قيمة حرفية ينتج عن ذلك توقف البرنامج وظهور رسالة تفيد حدوث خطأ وممعظم مستخدمى البرامج لا يستطيعون التعامل مع هذه الرسائل لعدم فهمها
فلذلك يفضل المبرمجين استعمال الامر لان هذا يتيح لهم التعامل مع الاخطاء بانفسهم وعرض رسائل أوضح لمستعمل البرنامج يقوم المبرمجون بكتابتها
ولذلك فان مجموعة أوامر تستخدم لاكتشاف الاخطاء التى تحدث اثناء تشغيل البرنامج والتعامل معها
*******************************************
try/catch الصيغة العامة لاستخدام اوامر
Try
الجملة المحتمل مستخدم البرنامج ان يخطئ فيها
Catch
الرسالة التى تظهر لمستخدم البرنامج موضح بها الاخطاء التى حدثت
End try
Msgbox("الرسالة") ابسط شكل للرسالة
اكتب مشروع لجمع عددين
الكود المستخدم لعمل البرنامج
Dim first, second, result As Decimal
first = Decimal.Parse(TextBox1.Text)
second = Decimal.Parse(TextBox2.Text)
result = first + second
Label4.Text = result.ToString
End Sub
نجد عند تنفيذ هذا الكود عند ادخال قيمة حرفية يتوقف البرنامج ويعرض رسالة خطأ
البرنامج باستعمال الامر try
Dim first, second, result As Decimal
try
first =Decimal.Parse(TextBox1.Text)
second =Decimal.Parse(TextBox2.Text)
catch
msgbox("لقد قمت بادخال قيمة حرفية")
End try
result = first + second
Label4.Text = result.ToString
End Sub
العمليات الحسابية
vb.net الجدول الاتى يوضح العمليات الحسابية التى يمكن اجراؤها فى
العملية المعامل
جمع +
طرح -
ضرب *
قسمة عادية /
قسمة اعداد صحيحة \
باقى القسمة Mod
الاسس ^
قسمة الاعداد الصحيحة وباقى القسمة
قسمة الاعداد الصحيحة هى قسمة عدد صحيح على عدد صحيح واهمال باقى القسمة لتكون النتيجة عددا صحيحا
قسمة عادية41/4= عشرة وربع مثال
قسمة أعداد صحيحة 41\4=10
41 mod 4 = 1 باقى القسمة
الاسس ^
يستعمل معامل الاس فى رفع عدد معين (الاساس) الى اس معين وتكون التيجة من النوع double
اولويات تنفيذ العمليات الحسابية
جميع لغات البرمجة بما فيها vb.net قد وضعت قاعدة تسمى قاعدة اولويات تنفيذ العمليات الحسابية لتحديد اولوية تنفيذ العملية الحسابية وفى هذه القاعدة يتم ترتيب المعاملات المختلفة ترتيبا تنازليا حسب اولوية تنفيذها عند اجتماعها فى عملية حسابية واحدة
ترتيب العمليات فى vb.net
العمليات التى بين الاقواس
عمليات الاسس
عمليات الضرب والقسمة
عملية قسم الاعداد الصحيحة
عمليات حساب باقى القسمة
عمليات الجمع والطرح
فى حالة وجود اكثر من عملية لها نفس الاولوية كالضرب والقسمة او والجمع والطرح فان ترتيب تنفيذها يكون من اليسار الى اليمين ، اما اذا تداخلت الاقواس (كأن يكون هناك اقواس داخل اقواس ) فان الاقواس الداخلية يتم تنفيذ ما بينها اولا
*************************************************
ما نتيجة تنفيذ العليات الاتية
(أ)3+2*2^2/4-1+5*3
3+2*4/4-1+5*3
3+8/4-1+15
3+2-1+15
5-1+15
20-1
19
(ب) 2+1*3^2\4
2+1*9\4
2+1*2
2+2
4
التحويل بين انواع البيانات العددية
التحويل المباشر ( التلقائى )
فى التحويل المباشر : يتم التحويل من نوع عددى ذى سعة تخزينية صغيرة الى نوع عددى ذى سعة تخزينية اكبر
يوضح الجدول الاتى التحويلات التى يمكن اجراؤها بطريقة مباشرة
الى ( to ) من ( from )
Short,integer,long,single,double,or decimal byte
Integr,long,single,double,or decimal short
Long,single,double,or decimal integer
Single,double,or decimal long
Single or double decimal
double Single
ملاحظات : التحويل المباشر لا يصلح فى الحالتين الاتيتين
1- تحويل البيانات من النوع Double الى اى نوع اخر
2- تحويل البيانات التى تحتوى على كسور Double,Single الى النوع Decimal ويجب ان يتم بالطريقة المباشرة
مثال : اذا أردنا تحويل متغير a من نوع integer ، الى متغير b من نوع decimal فان التحويل يتم بالطريقة المباشرة بالصورة a=b
السعة التخزينية : عدد الخلايا التى يشغلها نوع البيان فى الذاكرة ************************************************
التحويل غير مباشر
يتم استعمال التحويل غير المباشر بين البيانات العددية التى لا يمكن اجراء التحويل المباشر بينها مثل تحويل النوع double لى اى نوع اخر من انواع البيانات
التحويل غير مباشر : هو تحويل من نوع عددى ذى سعة تخزينية كبيرة الى نوع عددى ذى سعة تخزينية اقل
فى هذا التحويل قد يتولد عنه خطأ اذا ادى الى ان يفقد الرقم المحول احدى خاناته المؤثرة الهامة ونعنى هنا بالخانات المؤثرة اى خانة من خانات الرقم الصحيح مع ملاحظة ان الكسور يتم تقريبها الى اقرب رقم صحيح فى حالة التحويل الى ارقامصحيحة اما اذا لم يحدث فقد لاى خانة مؤثرة فان عملية التحويل تتم ولا يتولد خطأ وعلى هذا يجب
عدم استعمال التحويل غير مباشر الا اذا كنت متأكد ان النوع المحول اليه يستوعب القيمة التى سيتم تحويلها
مثال :
اذا كان لدينا زجاجة مياه غازية سعتها التخزينية لتران ولكن يوجد بها لتر فقط واردنا افراغها فى زجاجة سعتها التخزينية لتر واحد فقط فنجد ان هذا يتم بسهولة ولا يتولد عنه خطأ
كيفية التحويل غير المباشر
يتيح vb.net للمبرمجين تصنيف (class ) يسمى تصنيف التحويل ( convert ) والذى يحتوى على طرق ( methods ) تبدأ اسماؤها بـ to
للتحويل بين الانواع المختلفة كما هو موضح بالجدول امامك
للتحويل الى نوع البيان التالى استخدم الطريقة
Short Toint16
Integer Toint32
Long 64 Toint
Decimal Todecimal
Single Tosingle
Double Todouble
مثال :
اذا اردت ان تخزن قيمة المتغير x من نوع single فى المتغير y من نوع decimal
الاجابة تتم عملية التحويل بالشكل الاتى :
Y = convert.Todecimal(x)
2- اذا اردت تخزين قيمة المتغير x من النوع double فى المتغير y من نوع integer
الاجابة : y=convert.toint32(x) وهكذا
*************************************************
اجابة اسئلة الكتاب المدرسى الفصل الاول
السؤال الاول : اختر الاجابة الصحيحة من بين الاقواس
1- للتحويل بين نوع بيان رقمى لنوع بيان رقمى اخر نستخدم الاجراء
أ – convert
ب – transfer
جـ- parse
د- implicit الاجابة رقم أ
2- الرمز " " فى لغة vb يرمز به الى (السلسلة الحرفية الفارغة )
3- التعبير الشرطى الذى يستخدم فى الاعلان عن ثلاثة متغيرات من النوع رقم صحيح ( integer ) ومتغيرين من النوع سلسلة حرفية ( string ) هو
أ ) dim n1,n2,n3 as integer, dim s1,s2 as string
ب) dim n1,n1,n3 as integr
Dim s1,s2 as string
ج) dim n1 as integer
Dim n2 as integer
Dim n3 as integer
Dim s1 as sting
Dim s2 as string
د) كل من ب) و ج) الاجابة كل من ب) و ج)
ــــــــــــــــــــــــــــــــــــــ
1- عند وضع قيمة فى عنوان فى ذاكرة الحاسب فان هذه القيمة
( تحل محل القيمة السابقة الموجودة فى هذا العنوان )
ـــــــــــــــــــــــــــــــــــــ
عند قراءة قيمة من عنوان من الذاكرة يحدث الاتى ( لا تتاثر محتويات عنوان الذاكرة )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
2- القسمة الرقمية integer division يعبر عنها عن طريق ( \ )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
3- يتم احتساب قيمة التعبير الموجود على يمين علامة = فى التوقيت الاتى ( قبل تنفيذ التخصيص )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
4- يبدأ الاعلان عن المتغيرات باستخدام الكلمة الاتية ( dim )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
5- لتحويل قيمة عددية الى نوع سلسلة حرفية string يتم استخدام الدالة الاتية ( tostring) )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
6- يتم احتساب التعبيرات الحسابية بطريقة ( من المستوى الاعلى فى الاسبقية الى المستوى الاقل )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
السؤال الثالث
ما الخطأ فى البرنامج الموضح فى الشكل الاتى
Dim number1 as integer
Number1=(4*3^2)/(10 mod 3 -1 )
الاجابة
Number1=(4*9)/(1-1)
Number1=36/0
الخطأ : ان باقى القسمة 10 mod 3=1 واحد ناقص واحد يساوى صفر فيصبح المقام صفر والقسمة على صفر مستحيلة
*********************************************
أسئلة الوزارة من على الانترنت
السـؤال الأول:
أكمـل مكـان النقـط بمـا تراه مناسـباً لكي يجعـل العبـارات صحيحـة:
أراد يوسـف حسـاب مسـاحة دائـرة ما، فقـام بكتـابـة البرنـامـج التـالي:
Const Pi As Single = 3.14
Dim R As Single
Dim Area As Double
R = 1000
Area = Pi * R * R
Msgbox ( Area )
1- اسـتخدم يوسـف المتغـير العـددي R من نـوع ............ لوضـع بداخـله القيمـة ............
2- كما اسـتخدم أيضـاً المخـزن العـددي الثـابت ............ من النـوع Single لتخصيص له
القيمـة ............
3- كما تم اسـتخدام المتغـير العـددي .................. من النـوع .................. لوضـع
فيـه .................. وهـي تسـاوي تمامـاً Pi * R^2.
4- تم الإعـلان عـن المتغـير العـددي R باسـتخدام الكلمـة Dim ، كما تم الإعـلان عن المخزن الثابت Pi باسـتخدام الكلمـة ..................
السؤال الثالث اختر الإجابة الصحيحة مما بين القوسين لكل مما يأتي:
1- المتغـير العـددي الذي يأخـذ قيـم عـدديـة صحيحـة من 0 إلى 255 هـو
مـن النـوع ( Byte – Integer – String ).
2- المتغـير من النـوع ( Boolean – Byte – Short ) يأخـذ القيمـة True أو False.
3- لتخـزين قـيم عدديـة تحتوي على كسـور نستخدم متغيرات من النوع (Integer – Short – Single).
4- لتخـزين قـيم عـدديـة صحيحـة لا تحتـوي على كسـور نسـتخدم متغـيرات
من النـوع (Integer – Double – Single).
5- من قـواعـد تسـميـة المتغـيرات أو الثـوابـت في البرنامـج، يجـب أن
تبـدأ بـ ( رقـم - حـرف – أي رمـز ).
6- يمكـن اسـتخـدام الكلمـة ( Dim – Const – End ) للإعـلان عن أسـماء المتغـيرات في البرنامـج.
7- يمكـن اسـتخـدام الكلمـة ( Sub – Const – Dim ) للإعـلان عن أسـماء الثـوابت
8- تُسـتخدم أوامـر ( Try/Catch -Dim/As - Const/As ) لاكتشـاف الأخطـاء التي تحـدث أثنـاء تشـغيـل البـرنـامـج والتعامـل معهـا.
9- بعـد تنفـيذ الصـيغـة الحسـابيـة 2 + 3 * 4 يكـون النـاتـج هو ( 14 – 20 – 9 ).
10- نـاتـج تنفـيذ الصـيغـة الحسـابيـة 1+ 3^2 هـو ( 10– 16– 9 ).
السـؤال الثاني:
اختر الإجابة الصحيحة مما بين القوسين لكل مما يأتي:
Dim , Const , String , Single ) )
1- أراد خـالـد حسـاب مجمـوع درجـات طـالب في المـواد الدراسـية فقـام باسـتخدام متغـيرات عـدديـة من النـوع Single حـيث تـم الإعـلان عنهـا بالكلمـة .................
2- كما اسـتخدم أيضـاً متغـير مـن النـوع ................... لوضـع فيـه اسـم الطـالـب.
3- كما تـم اسـتخدام متغـير مـن النـوع .......... لوضـع فيه مجمـوع درجات المواد الدراسـية.
ضع علامة () أمام العبارة الصحيحة و علامة (×) أمام العبارة الخطأ للعبارات الآتية:
1- المخازن التي يمكن أن تتغير قيمها أثناء تشغيل البرنامج يطلق عليها اسم "المتغيرات". (.....)
2- المخازن التي تتغير قيمها أثناء تشغيل البرنامج يطلق عليها اسم "الثوابت". (.....)
3- المتغـير من النـوع Integer يأخـذ قيـم عـدديـة صحيحـة من 0 إلى 255. (.....)
4- المتغـير من النـوع Byte يأخـذ قيـم عـدديـة صحيحـة من 0 إلى 255. (.....)
5- المتغـير من النـوع Boolean يأخـذ القيمـة True أو False. (.....)
6- لتخـزين قـيم عدديـة تحتوي على كسـور نستخدم متغـيرات من النوع Integer أوShort.
7- لتخـزين قـيم عدديـة تحتوي على كسـورنسـتخدم متغـيرات من النوعSingleأو Double. (.....)
8- من قواعـد تسـمية المتغـيرات أو الثـوابـت في البرنامـج، يجـب أن تبـدأ بحـرف. (.....)
9- يمكـن اسـتخدام الكلمات Dim أو Integer أو Double كأسـماء لمتغـيرات في البرنامـج. (.....)
10- تُسـتخدم الكلمـة Dim للإعـلان عـن أسـماء المتغـيرات داخـل البرنـامـج. (.....)
11- تُسـتخدم الكلمـة Constant للإعـلان عـن أسـماء الثـوابت داخـل البرنـامـج. (.....)
12- تُسـتخدم أوامر Try/Catch لاكتشـاف الأخطاء التي تحدث أثناء تشـغيل البرنامج والتعامل معها. (.....)
13- من أولويـات العمليـات الحسـابيـة، عملية الجمـع تسـبق عمليـة القسـمة عنـد التنفيـذ. (.....)
14- من أولويـات العمليـات الحسـابيـة، عملية الضـرب تسـبق عمليـة الطـرح عنـد التنفيـذ. (.....)
15- تنفـيذ العمليات التي ما بداخـل الأقـواس تسـبق جميـع العمليـات الحسـابيـة.
تمثيل البيانات
الفصل الاول
تمثيل البيانات
عندما يتم ادخال البيانات بواسطة وحدات الادخال فانها تخزن داخل الذاكرة الداخلية
وتتكون ذاكرة الحاسب من ملايين الخلايا ( الاماكن ) المتساوية وتسمى هذه الخلايا بالبايت (byte) وتحمل هذه الخلايا ارقاما متسلسلة تبدأ من الصفر
تمثل عدد هذه الخلايا حجم ذاكرة الحاسب
اى ان كلما زاد عدد هذه الخلايا (byte) كانت ذاكرة الجهاز اكبر وبالتالى فان سعة تخزين البيانات تكون اكبر
تقاس ذاكرة بالكيلوبايت
***********************************************
نجد عند تخزين بيان ما فى الذاكرة نجد انه يشغل مساحة حجمها خلية واحدة ( واحد بايت) وبيان اخر يشغل مساحة حجمها 3 خلايا ( 3 بايت ) نجد هذا الاختلاف فى المساحة المحجوزة للبيان يرجع الى نوع البيان المخزن داخل هذه الخلايا
ومن الممكن ان يكون البيان المخزن داخل هذه الخلايا ثابت او متغير
ثابت : هوالبيان الذى لاتتغير قيمته اثناء تشغيل البرنامج
متغير : هو البيان الذى تتغير قيمته اثناء تشغيل البرنامج
انواع البيانات تنقسم الى
أعداد حروف تاريخ منطقى
عدد صحيح عدد عشرى
Byte single char date boolean
Short double string
Integer decimal
Long
**************************************************
الجدول التالى يوضح نوع البيان وحجمه الذى يشغله فى الذاكرة وطبيعة البيان المخزن داخله ودرجة الدقة
نوع البيان الحجم الذى يشغله فى الذاكرة بالبايت طبيعة البيان المخزن داخله درجة الدقة
(عدد الخانات)
Byte 1 من 0 الى 255 لا توجد
Short 2 من – 32768
الى 32767 5 ارقام
Integer 4 من -2147483648 الى 2147483647 10 ارقام
Long 8 اكثر من 2147483647 19 رقم
single 4 من 3810 الى 3810 7 ارقام
double 8 اكبر 3810 15 أرقام
decimal 16 مبلغ من المال 29 رقم
char 2 تخزين حرف واحد لا يوجد
string العديد من الخلايا تخزين اعداد من 0 الى
2 بليون حرف لا يوجد
date 8 تاريخ من 1/1/0001
الى 31/12/9999 لا يوجد
boolean 2 True or False
او yes or No لا يوجد
مثال توضيحى
لو اردنا تخزين العدد الصحيح 200 فاننا يمكن تخزينه فى كل من byte ,short , integer , long ولكن الاصح تخزينه من نوع byte لانه بذلك سيشغل مساحة اقل فى الذاكرة
مثال آخر
لو اردنا تخزين العدد 417 321456.15478961 داخل ثلاث متغيرات من نوع decimal , single , double
نجدان القيمة التى تخزن داخل متغير من نوع single هى : 321456.2
والقيمة التى تخزن فى متغير من نوع double هى 321456.154789614
والقيمة التى تخزن فى متغير من نوع decimal هى 321456.15478961417
**************************************************
الثوابت : هى طريقة لاعطاء اسماء للقيم التى لا تتغير اثناء تشغيل البرنامج
ويوجد فى البرنامج نوعين من الثوابت
أ – ثوابت جوهرية: وهى ثوابت موجودة فى بناء وجوهر نظام vb.net اى انها ثوابت سابقة التعريف يستطيع اى برنامج vb.net ان يستعملها مباشرة بدون الاعلان عنها مثال للثوابت الجوهرية ثوابت الالوان
ب- الثوابت المسماه : هى ثوابت يقوم المبرمج بتعريفها طبقا لاحتياجات البرنامج معنى ذلك انها غيرسابقة التعريف بالنسبة للبرنامج فيجب
الاعلان عنها قبل استعمالها فى البرنامج والا سيحدث خطا
ويسمى هذا الخطأ syntax error معناه خطأ فى قواعد البرمجة
*********************************************
الصيغة العامة للاعلان عن الثوابت فى البرنامج
يجب اعطاء قيمة للثابت كما هو موضح بأعلى فى التعريف
اهمية الاعلان عن الثوابت بدلا من استخدام قيمها مباشرة
1- السهولة فى تغير قيمة الثابت اذا اردنا ذلك
2- يصبح البرنامج مفهوما اكثر عند قرائته
***********************************************
المتغيرات :
هى القيم التى تتغير اثناء تشغيل البرنامج ويجب الاعلان عنها داخل البرنامج
الصيغة العامة للاعلان عن المتغيرات
*******************************************
عند كتابة اسم المتغير او الثابت يجب اتباع الاتى حتى لايحدث خطأ (syntax error )
1- يجب ان يبدأ الاسم بحرف من الحروف الانجليزية سواء captal او small
2- بعد الحرف الاول يمكن ان يأتى اى عدد من الحروف او الارقام او الرمز _ underscore باى ترتيب
3- لا يسمح ان يحتوى الاسم على اى رموز او علامات خاصة كالمسافة والنقطة وعلامة الاستفهام وعلامة التعجب ......... الخ
4- لا يسمح ان يكون الاسم من الكلمات المحجوزة فى vb.net مثل (double,date,dim,const )
ملاحظات
من المستحب ان يكون اسم المتغير او الثابت يدل على محتواه
اذا اردنا ان يكون اسم المتغير من مقطعين والمسافة غير مسموحة فى اسم المتغير فالحل نبدأ كل مقطع بكابتل
مثال : first name خطأ لوجود مسافة فى اسم المتغير
انما FristName صحيحة كاسم للمتغير ؛ وايضا frist_name صحيحة لان لايوجد مسافات والرمز المستخدم هو underscore
يفضل بعض المبرمجين ان يبدأ اسم المتغير بثلاثة احرف تعطى انطباعا بنوع المتغير مثال لو متغير اسمه frist وسيخزن به بيان من نوع integer فمن المستحسن ان يكون اسم المتغير Intfrist
***********************************************
يتحدد تلقائيا ثلاث خصائص لنوع المتغير فى اى برنامج عند اختيارنا لهذا المتغير وهذه الخصائص هى :
1- نوع البيانات التى يمكن تخزينها فيه
2- العمليات التى يمكن اجراؤها عليه
3- حجم الذاكرة الذى يحتاجه هذا المتغير
ما الفرق بين هذين التعريفين
Dim a as integer
Dim b as integer=20
اولا كلاهما تعريف لمتغير لانه بدأ بكلمة dim ولكن الاختلاف ان قيمة المتغير a الابتدائية هى صفر وقيمة المتغيرb الابتدائية هى 20
ما الفرق بين هذين التعريفين Dim a as string
Dim b as string= "sama"
كما شرحنا انهم تعريف لمتغير ولكن القيمة الابتدائية للمتغير a هى سلسلة حرفية فارغة "" والقيمة الابتدائية للمتغير b هى "sama"
هل السلسلة الحرفية "" تساوى السلسة الحرفية " "
الاجابة لا
لان "" عبارة عن سلسلة حرفية فارغة أما " " فهى سلسلة حرفية بها مسافات( طولها هو عدد المسافات)
***********************************************
مثال توضيحى
اكتب صيغة تعريف المتغيرات الاتية
المتغيرين a,b نوع البيان الذى سيخزن بداخلهم integer
المتغيرين c,d نوع البيان الذى سيخزن بداخلهم string
1- Dim a as integer
Dim b as integer
Dim c as string
Dim d as string
2- Dim a,b as integer
Dim c,d as string
3-Dim a,b as integer , c,d as string
الثلاث صور السابقة لتعريف المتغيرات كلها صحيحة ولكن نلاحظ فى الطريقة الاخيرة اننا اعلنا عن جميع المتغيرات باستخدم امر ..... واحد
*************************************************
ان اهم دور للمتغيرات فى البرنامج هو تخزين البيانات بها ولعمل ذلك نستخدم امرالتخصيص وهذا الامر يأخذ الشكل الاتى
القيمة = اسم المتغير
= تسمى معامل التخصيص
يجب ان تكون القيمة هى التى على يمين = ، واسم المتغير على شمال =
A = 10
10 = A
الصيغة الاولى صحيحة كأمر تخصيص لان معناها ان القيمة 10 سيتم تخزينها داخل المتغير A
اما الثانية الصيغة خطأ لان معناها ان قيمة المتغير A سيتم تخزينها فى 10 نفهم من ذلك ان القيمة الموجودة على يمين = هى التى ستخزن فى المتغير الموجود على يسار =
يجب ان تكون القيمة المراد تخزينها من نوع ملائم لنوع المتغير الذى سيتم التخزين به
مثال :
Dim a as integer
a = mohamed
نجد فى المثال السابق اننا حجزنا مكان فى الذاكرة لمتغير اسمه a و سيتم تخزين بيانات عددية صحيحة بداخله ولكن هنا نلاحظ فى الخطوة الثانية انه تم ادخال بيان حرفى وهذا خطأ ولكن الصح مثلا a=7 عدد
القيمةالتى تخزن فى المتغير اما ان تكون
A=41- قيمة مجردة مثال
a = 2 , b = 5 - قيمة متغير اخر مثال2
ِa = b
قبل عملية التخصيص ( الاحلال ) بعد عمليةالتخصيص ( الاحلال )
a b a b
******************************
3- ناتج عملية حسابية مثال
a = 4, b = 7
a = b + 2
قبل عملية التخصيص ( الاحلال ) بعد عمليةالتخصيص ( الاحلال )
a b a b
نلاحظ فى 2 ،3 ان قيمة المتغيرات التى على يمين = لا تتغير وانما قيمة المتغيرات الموجودة على شمال = هى التى تتغير
وايضا ان القيمة الجديدة للمتغير تحل محل القيمة القديمة
مفهوم العلامة = فى امر التخصيص يختلف عن مفهومها فى المعادلات الرياضية
X + 1 = 3 مثال :
تمثل معادلة رياضية ولكن غير صحيحة كأمر تخصيص لوجود عملية حسابية على يسار =
X = x + 1
لا تمثل معادلة رياضية ولكنها صحيحة كأمر تخصيص ومعناها ان قيمة المغير الجديدة
تساوى قيمة المتغير القديمة +1 x لــ
*******************************************
1- تحديد القيمة الموجودة على يمين = كالاتى
أ- استبدال كل متغير او ثابت بقيمته
ب- اجراء العملية الحسابية واستخراج النتيجة
2- تخزين النتيجة فى المتغير على شمال =
*****************************************
كما اننا نقوم بتخزين ناتج العمليات الحسابية فى المتغيرات الرقمية باستخدام امر التخصيص فاننا نستطيع ايضا تخزين القيم الحرفية فى متغيرات حرفية باستعمال نفس الامر
وايضا كما اننا نقوم باجراء عمليات رياضية باستعمال المتغيرات الرقمية فاننا نستطيع بالمثل اجراء بعض العمليات على المتغيرات الحرفية
من اشهر العمليات التى يمكن ان نقوم بها على المتغيرات الحرفية عملية ربط اكثر من قيمة حرفية او متغير حرفى ببعضها لتكوين متغير حرفى واحد
هذا الربط يتم باستعمال الرمز & الذى يسمى معامل الربط
مثال :
"number of student" = "of student" & " "& "number"
*****************************************
التحويل بين الانواع المختلفة للبيانات
تختلف طريقة تخزين الانواع المختلفة من البيانات فى ذاكرة الحاسب كما يختلف ايضا
تختلف طريقة تخزين الانواع المختلفة من البيانات فى ذاكرة الحاسب كما يختلف ايضا حجم الذاكرة (عدد الخلايا) التى يتم التخزين بها . فمثلا تختلف طريقة تخزين القيمة الحرفية 123 اختلافا تاما عن طريقة تخزين القيمة الرقمية 123 فمثلا يتم تخزين القيمة الحرفية 123 فى ثلاث خلايا اما القيمة الرقمية 123 فمن الممكن تخزينها فى خلية واحدة
عند ادخال البيانات اثناء تشغيل البرنامج فاننا ندخلها عن طريق اداة الكتابة text وتكون هذه البيانات هى محتوى الخاصية (textbox)
ولكن الفيجول بيزيك يتعامل مع محتوى الخاصية على انها بيان حرفى وليس عددي فى هذه الحالة لايمكن اجراء عمليات حسابية على هذه البيانات مباشرة
ولذلك اذا اردنا اجراء العمليات الحسابية على البيانات المدخلة بواسطة اداة ...... فيجب تحويلها اولا الى قيم عددية ويتم ذلك من خلال استخدام دالة.................
الشكل العام لدالة .......................
لتحويل قيمة حرفية الى رقم عدد صحيح
Integer.parse(القيمة الحرفية التى تريد تحويلها
لتحويل قيمة حرفية الى رقم عددعشرى
Decimal.parse(القيمة الحرفية التى تريد تحويلها
*********************************************
تحويل البيانات الرقمية الى بيانات حرفية
كما سبق وشرحنا انه يجب تحويل القيمة المدخلة بواسطة اداة الى قيم عددية لاجراء العمليات الحسابية عليها فاننا ايضا لكى نظهر هذه البيانات فى اداة او اداة يجب تحويلها الى قيم حرفية ولعمل ذلك نستخدم الدالة
الشكل العام للدالة............
try/catch مجموعة اوامر
عنما يتم تحويل البيان المدخل بواسطة اداة ................ الى بيان رقمى بالطريقة السابقة فعندما يقوم مستخدم البرنامج بادخال قيمة حرفية ينتج عن ذلك توقف البرنامج وظهور رسالة تفيد حدوث خطأ وممعظم مستخدمى البرامج لا يستطيعون التعامل مع هذه الرسائل لعدم فهمها
فلذلك يفضل المبرمجين استعمال الامر لان هذا يتيح لهم التعامل مع الاخطاء بانفسهم وعرض رسائل أوضح لمستعمل البرنامج يقوم المبرمجون بكتابتها
ولذلك فان مجموعة أوامر تستخدم لاكتشاف الاخطاء التى تحدث اثناء تشغيل البرنامج والتعامل معها
*******************************************
try/catch الصيغة العامة لاستخدام اوامر
Try
الجملة المحتمل مستخدم البرنامج ان يخطئ فيها
Catch
الرسالة التى تظهر لمستخدم البرنامج موضح بها الاخطاء التى حدثت
End try
Msgbox("الرسالة") ابسط شكل للرسالة
اكتب مشروع لجمع عددين
الكود المستخدم لعمل البرنامج
Dim first, second, result As Decimal
first = Decimal.Parse(TextBox1.Text)
second = Decimal.Parse(TextBox2.Text)
result = first + second
Label4.Text = result.ToString
End Sub
نجد عند تنفيذ هذا الكود عند ادخال قيمة حرفية يتوقف البرنامج ويعرض رسالة خطأ
البرنامج باستعمال الامر try
Dim first, second, result As Decimal
try
first =Decimal.Parse(TextBox1.Text)
second =Decimal.Parse(TextBox2.Text)
catch
msgbox("لقد قمت بادخال قيمة حرفية")
End try
result = first + second
Label4.Text = result.ToString
End Sub
العمليات الحسابية
vb.net الجدول الاتى يوضح العمليات الحسابية التى يمكن اجراؤها فى
العملية المعامل
جمع +
طرح -
ضرب *
قسمة عادية /
قسمة اعداد صحيحة \
باقى القسمة Mod
الاسس ^
قسمة الاعداد الصحيحة وباقى القسمة
قسمة الاعداد الصحيحة هى قسمة عدد صحيح على عدد صحيح واهمال باقى القسمة لتكون النتيجة عددا صحيحا
قسمة عادية41/4= عشرة وربع مثال
قسمة أعداد صحيحة 41\4=10
41 mod 4 = 1 باقى القسمة
الاسس ^
يستعمل معامل الاس فى رفع عدد معين (الاساس) الى اس معين وتكون التيجة من النوع double
اولويات تنفيذ العمليات الحسابية
جميع لغات البرمجة بما فيها vb.net قد وضعت قاعدة تسمى قاعدة اولويات تنفيذ العمليات الحسابية لتحديد اولوية تنفيذ العملية الحسابية وفى هذه القاعدة يتم ترتيب المعاملات المختلفة ترتيبا تنازليا حسب اولوية تنفيذها عند اجتماعها فى عملية حسابية واحدة
ترتيب العمليات فى vb.net
العمليات التى بين الاقواس
عمليات الاسس
عمليات الضرب والقسمة
عملية قسم الاعداد الصحيحة
عمليات حساب باقى القسمة
عمليات الجمع والطرح
فى حالة وجود اكثر من عملية لها نفس الاولوية كالضرب والقسمة او والجمع والطرح فان ترتيب تنفيذها يكون من اليسار الى اليمين ، اما اذا تداخلت الاقواس (كأن يكون هناك اقواس داخل اقواس ) فان الاقواس الداخلية يتم تنفيذ ما بينها اولا
*************************************************
ما نتيجة تنفيذ العليات الاتية
(أ)3+2*2^2/4-1+5*3
3+2*4/4-1+5*3
3+8/4-1+15
3+2-1+15
5-1+15
20-1
19
(ب) 2+1*3^2\4
2+1*9\4
2+1*2
2+2
4
التحويل بين انواع البيانات العددية
التحويل المباشر ( التلقائى )
فى التحويل المباشر : يتم التحويل من نوع عددى ذى سعة تخزينية صغيرة الى نوع عددى ذى سعة تخزينية اكبر
يوضح الجدول الاتى التحويلات التى يمكن اجراؤها بطريقة مباشرة
الى ( to ) من ( from )
Short,integer,long,single,double,or decimal byte
Integr,long,single,double,or decimal short
Long,single,double,or decimal integer
Single,double,or decimal long
Single or double decimal
double Single
ملاحظات : التحويل المباشر لا يصلح فى الحالتين الاتيتين
1- تحويل البيانات من النوع Double الى اى نوع اخر
2- تحويل البيانات التى تحتوى على كسور Double,Single الى النوع Decimal ويجب ان يتم بالطريقة المباشرة
مثال : اذا أردنا تحويل متغير a من نوع integer ، الى متغير b من نوع decimal فان التحويل يتم بالطريقة المباشرة بالصورة a=b
السعة التخزينية : عدد الخلايا التى يشغلها نوع البيان فى الذاكرة ************************************************
التحويل غير مباشر
يتم استعمال التحويل غير المباشر بين البيانات العددية التى لا يمكن اجراء التحويل المباشر بينها مثل تحويل النوع double لى اى نوع اخر من انواع البيانات
التحويل غير مباشر : هو تحويل من نوع عددى ذى سعة تخزينية كبيرة الى نوع عددى ذى سعة تخزينية اقل
فى هذا التحويل قد يتولد عنه خطأ اذا ادى الى ان يفقد الرقم المحول احدى خاناته المؤثرة الهامة ونعنى هنا بالخانات المؤثرة اى خانة من خانات الرقم الصحيح مع ملاحظة ان الكسور يتم تقريبها الى اقرب رقم صحيح فى حالة التحويل الى ارقامصحيحة اما اذا لم يحدث فقد لاى خانة مؤثرة فان عملية التحويل تتم ولا يتولد خطأ وعلى هذا يجب
عدم استعمال التحويل غير مباشر الا اذا كنت متأكد ان النوع المحول اليه يستوعب القيمة التى سيتم تحويلها
مثال :
اذا كان لدينا زجاجة مياه غازية سعتها التخزينية لتران ولكن يوجد بها لتر فقط واردنا افراغها فى زجاجة سعتها التخزينية لتر واحد فقط فنجد ان هذا يتم بسهولة ولا يتولد عنه خطأ
كيفية التحويل غير المباشر
يتيح vb.net للمبرمجين تصنيف (class ) يسمى تصنيف التحويل ( convert ) والذى يحتوى على طرق ( methods ) تبدأ اسماؤها بـ to
للتحويل بين الانواع المختلفة كما هو موضح بالجدول امامك
للتحويل الى نوع البيان التالى استخدم الطريقة
Short Toint16
Integer Toint32
Long 64 Toint
Decimal Todecimal
Single Tosingle
Double Todouble
مثال :
اذا اردت ان تخزن قيمة المتغير x من نوع single فى المتغير y من نوع decimal
الاجابة تتم عملية التحويل بالشكل الاتى :
Y = convert.Todecimal(x)
2- اذا اردت تخزين قيمة المتغير x من النوع double فى المتغير y من نوع integer
الاجابة : y=convert.toint32(x) وهكذا
*************************************************
اجابة اسئلة الكتاب المدرسى الفصل الاول
السؤال الاول : اختر الاجابة الصحيحة من بين الاقواس
1- للتحويل بين نوع بيان رقمى لنوع بيان رقمى اخر نستخدم الاجراء
أ – convert
ب – transfer
جـ- parse
د- implicit الاجابة رقم أ
2- الرمز " " فى لغة vb يرمز به الى (السلسلة الحرفية الفارغة )
3- التعبير الشرطى الذى يستخدم فى الاعلان عن ثلاثة متغيرات من النوع رقم صحيح ( integer ) ومتغيرين من النوع سلسلة حرفية ( string ) هو
أ ) dim n1,n2,n3 as integer, dim s1,s2 as string
ب) dim n1,n1,n3 as integr
Dim s1,s2 as string
ج) dim n1 as integer
Dim n2 as integer
Dim n3 as integer
Dim s1 as sting
Dim s2 as string
د) كل من ب) و ج) الاجابة كل من ب) و ج)
ــــــــــــــــــــــــــــــــــــــ
1- عند وضع قيمة فى عنوان فى ذاكرة الحاسب فان هذه القيمة
( تحل محل القيمة السابقة الموجودة فى هذا العنوان )
ـــــــــــــــــــــــــــــــــــــ
عند قراءة قيمة من عنوان من الذاكرة يحدث الاتى ( لا تتاثر محتويات عنوان الذاكرة )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
2- القسمة الرقمية integer division يعبر عنها عن طريق ( \ )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
3- يتم احتساب قيمة التعبير الموجود على يمين علامة = فى التوقيت الاتى ( قبل تنفيذ التخصيص )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
4- يبدأ الاعلان عن المتغيرات باستخدام الكلمة الاتية ( dim )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
5- لتحويل قيمة عددية الى نوع سلسلة حرفية string يتم استخدام الدالة الاتية ( tostring) )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
6- يتم احتساب التعبيرات الحسابية بطريقة ( من المستوى الاعلى فى الاسبقية الى المستوى الاقل )
ـــــــــــــــــــــــــــــــــــــــــــــــــ
السؤال الثالث
ما الخطأ فى البرنامج الموضح فى الشكل الاتى
Dim number1 as integer
Number1=(4*3^2)/(10 mod 3 -1 )
الاجابة
Number1=(4*9)/(1-1)
Number1=36/0
الخطأ : ان باقى القسمة 10 mod 3=1 واحد ناقص واحد يساوى صفر فيصبح المقام صفر والقسمة على صفر مستحيلة
*********************************************
أسئلة الوزارة من على الانترنت
السـؤال الأول:
أكمـل مكـان النقـط بمـا تراه مناسـباً لكي يجعـل العبـارات صحيحـة:
أراد يوسـف حسـاب مسـاحة دائـرة ما، فقـام بكتـابـة البرنـامـج التـالي:
Const Pi As Single = 3.14
Dim R As Single
Dim Area As Double
R = 1000
Area = Pi * R * R
Msgbox ( Area )
1- اسـتخدم يوسـف المتغـير العـددي R من نـوع ............ لوضـع بداخـله القيمـة ............
2- كما اسـتخدم أيضـاً المخـزن العـددي الثـابت ............ من النـوع Single لتخصيص له
القيمـة ............
3- كما تم اسـتخدام المتغـير العـددي .................. من النـوع .................. لوضـع
فيـه .................. وهـي تسـاوي تمامـاً Pi * R^2.
4- تم الإعـلان عـن المتغـير العـددي R باسـتخدام الكلمـة Dim ، كما تم الإعـلان عن المخزن الثابت Pi باسـتخدام الكلمـة ..................
السؤال الثالث اختر الإجابة الصحيحة مما بين القوسين لكل مما يأتي:
1- المتغـير العـددي الذي يأخـذ قيـم عـدديـة صحيحـة من 0 إلى 255 هـو
مـن النـوع ( Byte – Integer – String ).
2- المتغـير من النـوع ( Boolean – Byte – Short ) يأخـذ القيمـة True أو False.
3- لتخـزين قـيم عدديـة تحتوي على كسـور نستخدم متغيرات من النوع (Integer – Short – Single).
4- لتخـزين قـيم عـدديـة صحيحـة لا تحتـوي على كسـور نسـتخدم متغـيرات
من النـوع (Integer – Double – Single).
5- من قـواعـد تسـميـة المتغـيرات أو الثـوابـت في البرنامـج، يجـب أن
تبـدأ بـ ( رقـم - حـرف – أي رمـز ).
6- يمكـن اسـتخـدام الكلمـة ( Dim – Const – End ) للإعـلان عن أسـماء المتغـيرات في البرنامـج.
7- يمكـن اسـتخـدام الكلمـة ( Sub – Const – Dim ) للإعـلان عن أسـماء الثـوابت
8- تُسـتخدم أوامـر ( Try/Catch -Dim/As - Const/As ) لاكتشـاف الأخطـاء التي تحـدث أثنـاء تشـغيـل البـرنـامـج والتعامـل معهـا.
9- بعـد تنفـيذ الصـيغـة الحسـابيـة 2 + 3 * 4 يكـون النـاتـج هو ( 14 – 20 – 9 ).
10- نـاتـج تنفـيذ الصـيغـة الحسـابيـة 1+ 3^2 هـو ( 10– 16– 9 ).
السـؤال الثاني:
اختر الإجابة الصحيحة مما بين القوسين لكل مما يأتي:
Dim , Const , String , Single ) )
1- أراد خـالـد حسـاب مجمـوع درجـات طـالب في المـواد الدراسـية فقـام باسـتخدام متغـيرات عـدديـة من النـوع Single حـيث تـم الإعـلان عنهـا بالكلمـة .................
2- كما اسـتخدم أيضـاً متغـير مـن النـوع ................... لوضـع فيـه اسـم الطـالـب.
3- كما تـم اسـتخدام متغـير مـن النـوع .......... لوضـع فيه مجمـوع درجات المواد الدراسـية.
ضع علامة () أمام العبارة الصحيحة و علامة (×) أمام العبارة الخطأ للعبارات الآتية:
1- المخازن التي يمكن أن تتغير قيمها أثناء تشغيل البرنامج يطلق عليها اسم "المتغيرات". (.....)
2- المخازن التي تتغير قيمها أثناء تشغيل البرنامج يطلق عليها اسم "الثوابت". (.....)
3- المتغـير من النـوع Integer يأخـذ قيـم عـدديـة صحيحـة من 0 إلى 255. (.....)
4- المتغـير من النـوع Byte يأخـذ قيـم عـدديـة صحيحـة من 0 إلى 255. (.....)
5- المتغـير من النـوع Boolean يأخـذ القيمـة True أو False. (.....)
6- لتخـزين قـيم عدديـة تحتوي على كسـور نستخدم متغـيرات من النوع Integer أوShort.
7- لتخـزين قـيم عدديـة تحتوي على كسـورنسـتخدم متغـيرات من النوعSingleأو Double. (.....)
8- من قواعـد تسـمية المتغـيرات أو الثـوابـت في البرنامـج، يجـب أن تبـدأ بحـرف. (.....)
9- يمكـن اسـتخدام الكلمات Dim أو Integer أو Double كأسـماء لمتغـيرات في البرنامـج. (.....)
10- تُسـتخدم الكلمـة Dim للإعـلان عـن أسـماء المتغـيرات داخـل البرنـامـج. (.....)
11- تُسـتخدم الكلمـة Constant للإعـلان عـن أسـماء الثـوابت داخـل البرنـامـج. (.....)
12- تُسـتخدم أوامر Try/Catch لاكتشـاف الأخطاء التي تحدث أثناء تشـغيل البرنامج والتعامل معها. (.....)
13- من أولويـات العمليـات الحسـابيـة، عملية الجمـع تسـبق عمليـة القسـمة عنـد التنفيـذ. (.....)
14- من أولويـات العمليـات الحسـابيـة، عملية الضـرب تسـبق عمليـة الطـرح عنـد التنفيـذ. (.....)
15- تنفـيذ العمليات التي ما بداخـل الأقـواس تسـبق جميـع العمليـات الحسـابيـة.
- المرفقات
- الفصل الاول.doc
- لا تتوفر على صلاحيات كافية لتحميل هذه المرفقات.
- (254 Ko) عدد مرات التنزيل 0