قراءة
عرض

الثوابت والمتغيرات:Constant and Variables

2-1 مقدمــــــــــــــة :في أي لغة من لغات البرمجة بما فيها الفيجول بيسك تكون البيانات أما متغيرات variables أو ثوابت Constants و المتغير هو مكان في الذاكرة يتم تخصيصه لتقوم بوضع عنوان له ويخزن المعلومة التي تريدها بداخلة كما يمكنك تغير هذه المعلومة بمعلومة أخري في نفس المكان ويظل عنوانه ثابت .أما الثابت هو عبارة عن اسم يحمل قيمة ثابتة لا تتغير أثناء تنفيذ البرنامج .هذان المثالان يوضحان وظيفة كل من المتغيرات والثوابت ..مثال علي المتغيرات والثوابت 2-2 الثوابتConstants : :
وتمثل الثوابت العددية متمثلة بالأعداد الرقمية (20, 13, 0 ,2453) إذا كان عملك يتطلب مجموعة من العمليات الحسابية ترتبط بوحدة ثابتة مثل وحدة القياس المتر وهو يساوي مائه سنتمتر فيمكن الإعلان عن ذلك بالأمر التالي:كود:Const Meter=100 وهذه يفيدك عندما تكون جميع حساباتك بالنسبة للوحدة سنتمتر فبدلا من قيمة المتر وكتابة الرقم ( 100 ) في كل مرة سيتم كتابه الثابت Meter في جميع التعليمات المطلوبة داخل البرنامج وهي فائدة كبيرة تجعل برنامجك سهلا وبسيطا.أما الثوابت التي تتكون من سلسة حرفية أو رقمية فيجب أن تكتب بين حاصرتين (" " ) مثلا
“Hi” ; “ Ahmed” ; “ 7658” الأرقام المحصورة بين الحاصرتين تعتبر ثوابت حرفية
2-3 المتغيرات Variables
المتغير هو موقع محدد في الذاكرة يمكن أن يحتوي على بيانات معينة بنوع معين تتغير قيمته طبقا للقيمة المعروفة أو المحسوبة له خلال جمل البرنامج. فأن المتغيرات إذا ليست قيما ثابتة لأنها تتغير لاحقا بعكس الثوابت لأنها تبقى ثابتة طيلة عمل البرنامج.ولذالك يمكن للمتغير أن يحتوي قيما مختلفة في أوقات مختلفة مثلا إذا أردت أن تسال عن اسم العميل الذي سيدخله المستخدم فان اسم العميل قيمة متغيرة لأنك لا تعرف من هو هذا العميل الذي سيقع عليه اختيار المستخدم في هذه الحالة تستخدم متغير لتضع فيه اسم العميل انظر المثال التالي :كود:
(" اسم العميل ") HisName$=InputBox$ في هذا المثال سيعرض فيجول بيسك على المستخدم مربع حوار نتيجة لتنفيذ أمر InputBox$ يطالبه فيه بكتابه اسم العميل ويقوم بحفظ اسم العميل الذي يدخله المستخدم في المتغير HisName$ ويبقي المتغير HisName$ يحمل هذا الاسم حتى يقوم المستخدم بتغيره ويتم تغير القيمة التي يحملها المتغير HisName$ بوضع قيمة أخري داخلة فيقوم الفيجول بيسك باستبدال القيمة القديمة بالقيمة الجديدة .
و الصيغة العامة لتعريف المتغير في لغة الفيجول بيسك
Dim Var –Name as data type
حيث ا ن الـ Dim هي كلمة مفتاحيه في الفيجول بيسك ومعنى كلمة مفتاحيه إنها كلمة محجوزة للغة الفيجول بيسك فهذه الكلمة المفتاحية(Dim) تعلم لغة فيجول بيسك انك ستقوم بالإعلان وتعريف المتغير .
Var-name وهو اسم المتغير الذي ستقوم باستخدامه في برنامجك وهذا الاسم سيتم حجز مكان ثابت له في الذاكرة عند التشغيل
As وهي أيضا كلمة مفتاحيه تدل على انك بعد أن قمت بتعريف اسم المتغير تريد أن يكون بنوع معين مثل ما بعد As .
Data-type وتمثل نوع البيانات المراد تخزينها في هذا المتغير ويمكن اختيار أي نوع من البيانات المذكورة في الجدول التالي:

2-4 أنواع البياناتxe "أنواع المعطيات" Data Typexe "Data Type"

يدعم فيجول بيسك أنواعاً عديدة من البيانات، يستعرض الجدول 2-1 شتى أنواع البيانات ومجالات قيم البيانات المتوفرة في فيجول بيسك.
الجدول 2- 1. أنواع البيانات التي يدعمها فيجول بيسك.
نوع البيانات
البايتات المطلوبة
المجال
الاختصار
Integer
2 بايت
-32.768 إلى 32.767
%
Long
4 بايت
-2.147.483.648 إلى2.147.483.647


&
Single-positive
4 بايت
45-E1.401298 إلى38E3.402823

!
Single-negative
4 بايت
38E3.402823- إلى45-E1.401298-

!
Double-positive
8 بايت
24-D4.94065645841247 إلى
308D1.79769313486232
#
Double-negative
8 بايت
308D1.79769313486232- إلى
24-D4.94065645841247-
#
Currency
8 بايت
922337203685477,5808- إلى
922337203685477,5807
@
String
يعتمد على عدد الأحرف
من صفر إلى حوالي 2 بليون حرف
$
Date
8 بايت
1/شباط/100 إلى 31/ديسمبر/9999


Variant
يعتمد على نوع البيانات التي يخزنها

لنأخذ مثلاً العبارة التالية للتصريح عن المتحول (counter) بأنه من النوع الصحيح:
Dim Counter As Integer
وهي تقابل العبارة التالية (أي تكافئ) العبارة السابقة:
Dim Counter%

بشكل مشابه، يمكننا التصريح عن المتحول (Number) بأنه صحيح طويل كما يلي:
Dim Number As Long

يصرح عن المتحول المضاعف الدقة (Degree) بشكل مشابه لما يلي:
Dim Degree As Double

أما

Dim I
فسوف يشكل فيجول بيسك المتحول I من نوع متغير (Variant)،أي أن فيجول بيسك لا يعلم بماذا سوف يستخدم المتحول I، هل هو سلسلة أم متحول صحيح، أم متحول طويل، أم أي نوع آخر. سيتمكن فيجول بيسك فيما بعد من تحديد نوع المتحول بالنظر إلى العبارة التي تستخدمه.(أي من قيمة I إذا كانت رقمية يعتبره integer وإذا كانت قيمة I نصية يعتبره string .
وألان وقد تعرفنا علي وظيفة كل من المتغيرات و الثوابت و الفائدة المرجوة من استخدامهم ولكن بقي لنا أن نوضح كيفية التعامل مع المتغيرات و الثوابت ليمكننا استخدامهم بصورة صحيحة وبشكل أفضل وهذا ما سنلاحظه في التمارين القادمة.
2-5 العمليات الحسابية والمنطقية Arithmetic and logic operations
هناك مجموعة من العمليات الحسابية والمنطقية تدعمها لغة فيجول بيسك وذلك لاستخدامها في أي تعبير رياضي أو منطقي . أما العمليات الحسابية فهي مبينة في الجدول التالي:
رمز العملية operation code
العملية operation
+
( الجمع ) Addition
-
الطرح Subtraction
*
الضرب Multiplication
/
القسمة Division
\
القسمة الصحيحة Integer Division
Mod
باقي القسمة Modules
^
المعامل الآسي Exponentiation
أمثلة:
A=(B^2+C)/D*E 2- M=A-B/A+B


3- A= 104\ 25 الجواب: القيمة = 4 والباقي بهمل
4- B=5.8\2 الجواب= 2.9 ويقرب الـ 3
C= 7mod 4 الجواب = 3 وهو باقي القسمة

جدول العمليات المنطقية:

الرمز Symbol
العملية Operation
=
المساواة Equal
<
اقل من Less Than
<=
اقل أو تساوي Less Than or Equal
>
اكبر من Greater Than
>=
اكبر أو تساوي Greater Than or Equal
<>
لا تساوي Not Equal
And ; Or ;Not ; Xor
المنطقية Logical


أمثلة:
Dim A As Integer
Dim B As Integer
Dim C As Integer
Dim D As Integer
Dim V1 As Boolean
A=20
B=30
C=60
D=70
V1=(A>B) AND (B<C)
V2=(A>C) OR (D>A)
بناء على المعطيات للمتغيرات A;B;C and D فان ناتج البرنامج هو False للمتغير V1 و True للمتغير V2 .




رفعت المحاضرة من قبل: انعام عبدالجبار الطائي
المشاهدات: لقد قام عضوان و 1692 زائراً بقراءة هذه المحاضرة








تسجيل دخول

أو
عبر الحساب الاعتيادي
الرجاء كتابة البريد الالكتروني بشكل صحيح
الرجاء كتابة كلمة المرور
لست عضواً في موقع محاضراتي؟
اضغط هنا للتسجيل