📚 معاملات بايثون
المفاهيم الأساسية
معاملات بايثون (Parameters): قيم تُمرر للدالة داخل الأقواس وتُفصل بينها بفواصل.
تفصيل العملية عن معاملاتها: يتم باستخدام علامة النقطة (.)، مثل `drivetrain.drive_for`.
خريطة المفاهيم
```markmap
الوحدة الخامسة: برمجة الروبوت
الأدوات
VEXcode VR
#### واجهة بيئة VEXcode VR
##### فئات اللبنات البرمجية
###### المتغيرات (Variables)
####### مراقبة قيم المتغير
######## الغرض
######## الخطوات
######## النتيجة
####### مراقبة متغير العداد (Counter)
######## الغرض
######## الخطوات
######## النتيجة
####### وحدة تحكم العرض (Print Console)
######## الغرض
######## مثال من الصفحة
######## زر المسح (CLEAR)
###### التكرارات (Loops)
####### أنواع التكرارات
####### تكرار (repeat) مرات
######## الغرض
######## مثال: العمليات الحسابية في تكرارات
####### تكرار حتى (repeat until)
######## الغرض
######## كيفية الاستخدام مع العداد (Counter)
######## مثال 5: العد
######## مثال 6: رسم مربع
######### الهدف
######### المتغيرات المستخدمة
######### منطق البرنامج
######## التمييز بناءً على العداد (Counter)
######### الغرض
######### كيفية التنفيذ
######### مثال 7: رسم شكل ثماني
##### عرض الكود (Code Viewer)
###### الغرض
- رؤية المقطع البرمجي للمشروع بلغة بايثون.
- فهم طريقة ترجمة كل لبنة إلى نص برمجي.
###### مكونات النافذة
- المقطع البرمجي الافتراضي الخاص ببايثون.
- الدالة الرئيسية للمقطع البرمجي.
- المتغير الافتراضي الذي تم تعيينه على 0.
- الصف البرمجي لتشغيل روبوت الواقع الافتراضي.
###### قواعد مهمة
- يجب الإعلان عن المتغير داخل الدالة باستخدام `global`.
##### معاملات بايثون
###### الفرق عن اللبنات البرمجية
- في اللبنات: تغيير المعاملات عبر القوائم المنسدلة أو تغيير الأرقام.
- في بايثون: استخدام الفواصل للفصل بين المعاملات.
###### تركيب الأمر
- تفصيل العملية عن معاملاتها بعلامة النقطة (.).
- مثال: `drivetrain.drive_for(FORWARD, 200, MM)`
####### اسم العملية (Drivetrain)
####### المعاملات
######## الاتجاه (FORWARD)
######## المسافة (200)
######## الوحدة (MM)
###### مقارنة الأوامر واللبنات
####### drivetrain.drive_for(FORWARD, 200, MM) ↔ لبنة "تحرك إلى الأمام عدد 200 mm"
####### drivetrain.turn_for(RIGHT, 90, DEGREES) ↔ لبنة "انعطف يمين لمدة 90 درجة"
####### drivetrain.set_drive_velocity(50, PERCENT) ↔ لبنة "اضبط سرعة القيادة إلى 50 %"
####### for repeat_count in range(10): ↔ لبنة "تكرار 10"
####### wait(1, SECONDS) ↔ لبنة "الانتظار 1 ثانية"
```
نقاط مهمة
- في بيئة VEXcode VR، يمكن كتابة الأوامر بلغة بايثون بدلاً من استخدام اللبنات البرمجية المرئية.
- لكل لبنة برمجية مرئية أمر بايثون مكافئ لها.
- فهم تركيب أمر بايثون (مثل `drivetrain.drive_for(FORWARD, 200, MM)`) يساعد في قراءة الكود النصي وفهم دور كل جزء فيه.