التعامل مع قيم المتغيرات:
لا يوجد أبسط من قراءة قيمة متغير، أو كتابة قيمة فيه.. فما
عليك إلا استخدام
العلامة = لفعل هذا.. جرب ما يلي في حدث ضغط أي زر:
العلامة = لفعل هذا.. جرب ما يلي في حدث ضغط أي زر:
Dim X As
Integer = 3
Dim Y As
Integer = X - 1
' يمكنك
تغيير قيمة المتغير في أية لحظة
X = 4
Dim Z As Integer
' يمكنك
استخدام المتغيرات في أية عملية حسابية
Z = Y – X
' ويمكنك
إرسال المتغير إلى أية دالة
MsgBox(X) ' 4
MsgBox(Y) ' 2
MsgBox(Z) ' 2
ويعرف
استخدام العلامة = لنقل القيم من متغير إلى آخر باسم عملية التخصيص أو الإحلال Assignment، وهي تتم تبعا للقواعد التالية:
1- يوجد متغير واحد فقط على يسار العلامة =، بينما يوجد متغير واحد على الأقل
على يمين العلامة =، مثل:
Z = X
في هذا المثال سيتم نقل القيمة المحفوظة في
المتغير X، وحفظها في المتغير Z.
ويمكن أن يوجد أكثر من
متغير على يمين العلامة = ، تدخل معا في عملية حسابية.. مثل:
Dim X As
Integer = 1
Dim Y As
Integer = 2
Dim Z As
Integer
Z = X + Y
في هذه الحالة تقوم
فيجيوال بيزيك بالخطوات التالية عند تنفيذ البرنامج:
أ. التعويض عن كل متغير
بقيمته:
Z = 1 + 2
ب. تنفيذ العملية
الحسابية:
Z = 3
ج.
وضع الناتج في المتغير الموجود على يسار العلامة = .. هذا سيضع القيمة 3 في المتغير Z.
2-
لا يمكن أن توجد عمليات حسابية على يسار العلامة =.. السطر التالي مرفوض:
X + Z = Y
3- المتغير الذي يقع على يسار العلامة "="،
هو فقط الذي تتغيّر قيمته.. ولا تتغير قيمة أي متغيرات تقع على يمين العلامة =..
لهذا لو كانت للمتغيرات X و Y
و Z القيم 1 و 2 و 0 على التوالي، فإن تنفيذ السطر:
Z = X + Y
سيجعل للمتغير
Z
القيمة 3، بينما ستظل قيمتا كل من X و Y
ثابتتين.
4-
يمكن أن يدخل المتغير الموجود على يسار العلامة = ، في العملية الحسابية الموجودة
على يمينها، مثل:
Dim X As
Integer = 5
X = X + 10
MsgBox(X) '
15
X = X + 10
كالتالي: قيمة X الجديدة = قيمة X الحالية + 10
السبب في هذا هو أن فيجيوال بيزيك تنفذ العملية
الموجودة على يمين العلامة = أولا، فتقرأ القيمة المحفوظة في X (وهي 5) وتزيد عليها 10 ليصير الناتج 15، ثم تذهب لتحفظ هذا
الناتج في المتغير الموجود على يسار العلامة =، فتجد أن هذا المتغير هو X، لهذا تضع فيه الرقم 15.
5-
يمكن أن توجد أكثر من علامة = في نفس الأمر، لكن في هذه الحالة ستعتبر فيجيوال
بيزيك أن أول علامة من جهة اليسار هي علامة التخصيص، بينما أي علامات أخرى علامات
مقارنة.. مثال:
Dim X As
Integer = 1
Dim Y As
Integer = 2
Dim Z As
Boolean
Z = X = Y
عندما تقرأ فيجيوال بيزيك الأمر الأخير، فإنها
تفهمه كالتالي:
Z = (X = Y)
وهذا معناه أنها سترى إن كانت قيمة X تساوي قيمة Y، فإن كان هذا صحيحا فستضع القيمة True في المتغير Z، وإن لم يكن صحيحا، فستضع القيمة False في المتغير Z.. إذن فهذا السطر هو اختصار للكود التالي:
If X = Y Then
Z = True
Else
Z = False
End If
لاحظ
أننا عرفنا Z
في المثال السابق كمتغير منطقي Boolean، لهذا يقبل القيمتين True و False..
ويمكننا أيضا تعريف المتغير Z كعدد صحيح Integer.. في هذه الحالة تحول فيجيوال بيزيك القيمة True إلى -1 والقيمة False إلى صفر.. جرب مثلا:
Dim X As
Integer = 1
Dim Y As
Integer = 1
Dim W As
Integer = 2
Dim Z As
Boolean = X = Y
MsgBox(Z) ' -1
Z = X = W
MsgBox(Z) ' 0
ستعرض
الرسالة الأولى الرقم -1 لأن قيمة X تساوي قيمة Y، بينما ستعرض الرسالة الثانية الرقم 0، لأن قيمة X لا تساوي قيمة W.
من
كتاب المبرمج الصغير للصف الثالث الإعدادي (الفصل الدراسي الثاني).. للتنزيل
كاملا:
ليست هناك تعليقات:
إرسال تعليق
ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.