منفّذ الشيفرة خطوة بخطوة – المتغيرات وأنواع البيانات والتعابير
علوم الحاسوبالخوارزميات وحل المشكلات15–16 سنة
جارٍ التحميل…
سجّل الدخول للتشغيلنفّذ برنامجًا قصيرًا بلغة Python أو بالشيفرة الزائفة بأسلوب الامتحانات سطرًا سطرًا. يبيّن جدول المتغيرات كيف تتغير كل قيمة ونوع بياناتها (int وfloat وstring وBoolean) مع كل عملية إسناد، وتبيّن شجرة التعبير أولوية العمليات وكيف تُحسب 17 // 5 أو 17 % 5 أو int(3.7). وتشمل الأمثلة الإدخال والإخراج، والاختيار، والحلقات، والأعداد العشوائية مع مخطط تكرار، والملفات النصية الافتراضية، وأخطاء تحويل النوع والاستثناءات، وفيضان الأعداد الصحيحة 32-bit، وكلها تُسجَّل في جدول تتبع.
الدرس: المتغيرات والإسناد وأنواع البيانات والتعابير؛ الإدخال والإخراج، والاختيار، والتكرار، والملفات، والاستثناءات
ماذا تعرض
المتغير موقع تخزين له اسم: تحسب عملية الإسناد التعبير الموجود على اليمين وتخزّن النتيجة في المتغير الموجود على اليسار. ينفّذ هذا المنفّذ جزءًا تعليميًا من لغة Python، أو شيفرة زائفة بأسلوب الامتحانات تستخدم ← وDIV وMOD وIF … ENDIF، سطرًا واحدًا في كل مرة. يعرض جدول المتغيرات كل قيمة مع نوع بياناتها، وتعرض شجرة التعبير أولوية العمليات وكيف تُحسب القسمة الصحيحة وباقي القسمة وتحويل النوع، ويسجّل جدول التتبع كل خطوة. وتشمل الأمثلة الإدخال والإخراج، والاختيار، والحلقات، والأعداد العشوائية، والملفات النصية، وأخطاء تحويل النوع، والاستثناءات، وفيضان 32-bit.
طريقة الاستخدام
اختر البرنامج المثال واللغة، ثم اضغط «تنفيذ سطر واحد» للتقدم سطرًا في كل مرة، أو «تشغيل» للتشغيل بالسرعة المختارة، أو «تشغيل حتى النهاية». القيم التي تقرؤها input() أو INPUT تُكتب في مربع الإدخال، قيمة في كل سطر. بعد كل خطوة افحص جدول «المتغيرات في الذاكرة» وشجرة التعبير و«جدول التتبع». اضغط «تعديل الشيفرة» لكتابة برنامجك الخاص، واضبط «الأعداد الصحيحة» على 32-bit لترى الفيضان.
المعاملات القابلة للتغيير
- البرنامج المثال المتغيرات وأنواع البيانات, العوامل وأولوية العمليات, الإدخال والإخراج, الاختيار (if / else), الحلقات, الأعداد العشوائية (حجر النرد), القراءة من الملفات والكتابة فيها, أخطاء تحويل النوع والاستثناءات, فيضان الأعداد الصحيحة 32-bit
- اللغة Python, الشيفرة الزائفة (أسلوب الامتحانات)
- الأعداد الصحيحة غير محدودة (كما في Python), 32-bit (كما في Java وC)
- سرعة التشغيل 0.5–20 سطر/s
أسئلة للاستكشاف
- لماذا يفشل age + 1 بعد age = input()، بينما ينجح int(age) + 1؟
- ما القيم والأنواع التي تعطيها 17 // 5 و17 % 5 و17 / 5، وكيف يختلف // عن DIV مع -7؟
- في وضع 32-bit، لماذا يصبح 2147483647 + 1 عددًا سالبًا؟