|
المتغيرات
في لوجو ميكروسوفت :
تعريف
المتغيرات :
المتغير هو
شئ ما يتغير
وتوفر
لوجو نوعين من المتغيرات
وهما :
1-
متغيرات
شاملة .
2-
متغيرات
محلية .
1-
المتغيرات الشاملة يتم تعريفها بالأمر MAKE شريطة أن لا تكون
متغيرات بدء إجراء.
و تعريف
متغير شامل في لوجو نستخدم الصيغة
:
MAKE "<variableName> <value>
فمثلاُ
make "size 10.
ينشئ متغير
شامل -عام- و يخصص له القيمة 10
2-
المتغيرات المحلية :
و هي
نوعين الأول :
متغيرات بدء الإجراء ، و لا يعمل الإجراء إلا
بتمريرها إليه فمثلاً :
To Square :size
Repeat 4[fd :size
rt 90]
End
فالمتغير :size يعتبر متغيراً محلياً
، ولو تغيرت قيمة متغير بدء الإجراء بالأمر MAKE فإنه
يظل متغيراً محلياً ، ففي الإجراء التالي
يظل المتغير :size محلياً رغم تغيره داخل
الإجراء بالأمر Make :
To Square :size
Make "size :size +20
Repeat 4[fd :size
rt 90]
End
والنوع
الثاني من المتغيرات المحلية يتم
إنشائه بالأمر LOCAL
أو بالأمر LOCALMAKE
، ففي الإجراء التالي
، يعتبر المتغير :size
محلياً لأنه تم إنشائه بالأمر localmake
:
To Square
Localmake "size 60
Repeat 4[fd :size
rt 90]
End
الفرق
بين المتغيرات الشاملة والمتغيرات المحلية :
المتغير
المحلي يفقد قيمته لدي انتهاء عمل الإجراء ،
بينما المتغير الشامل يظل محتفظاُ بقيمته حتي
بعد انتهاء عمل الإجراء ، و هذا يعتبر استنزاف
للذاكرة في حالة عدم الحاجة إليه ، كما أنه
يتم حفظه ضمن محتويات الملف
، ويمكنك أن تستعرض
قيم المتغيرات الشاملة بالأمر PONS
استخدام
المتغيرات :
إذا أردت
استدعاء قيمة متغير من داخل إجراءك فضع
نقطتين قبل اسم المتغير فمثلا :
print :size
10
يطبع قيمة
المتغير
size
و بدون
استخدام النقطتين ":" سوف تعتبره لوجو
اسم إجراء وبالتالي تخرج رسالة خطأ .
to numbering
make "size 10
label :size
end
يمكن تخصيص
حروف أو كلمات أو قوائم تحوي كلمات لمتغيرات
فمثلاُ :
make "firstname "أحمد
pr :firstname
أحمد
تخصص
الكلمة "أحمد للمتغير
firstname بينما :
make "Totalname أحمد
محمود بدر]]
Print :Totalname
أحمد محمود
بدر
تخصص
الكلمات "أحمد محمود بدر" للمتغير Totalname .
التخلص
من المتغيرات الشاملة غير المرغوبة :
عندما ترغب
في حفظ محتويات الذاكرة في ملف اسطوانة ، أو
تنظف الذاكرة من قيم متغيرات غير مطلوبة
حالية يمكنك أن تستخدم إحدى الصيغتين
التاليتين :
|
الأمر
|
مثال
|
الشرح
|
|
ERNS
|
ERNS
|
يمسح كل
المتغيرات الشاملة الموجودة بالذاكرة
|
|
ERN
|
ERN "size
|
يمسح
المتغير :size فقط
من ذاكرة العمل
|
|