لبات ASPLلبات 0.7.0

البحث في التوثيق

يبدأ البحث بالتوثيق الحالي بالعربية · لبات 0.7.0

اكتب اسما كاملا مثل read_line أو كلمات عن الموضوع.

    English
    ملفات المصدر

    افتح ملف .aspl أو .لبات بترميز UTF-8، حتى 1 MiB، في مسودة جديدة. يبقى الملف في هذا المتصفح ولا يُشغّل تلقائياً.

    الارتباطات والحساب

    لبات 0.7.0 · الإصدار الحالي

    هيئ أسماء لقيم، واضرب 3 في 7، واطبع 21، وأصلح إسنادا إلى ارتباط ثابت.

    محتويات الصفحة

    ما ستتعلمه

    ستسمي قيما، وتحسب بأعداد صحيحة صغيرة، وتطبع نتيجة عددية، وتقرر متى يجوز إسناد قيمة جديدة إلى اسم.

    قبل أن تبدأ

    اقرأ أول خرج لفهم دالة الدخول المحجوزة والطباعة ونهاية السطر الصريحة والحالة 0. يقدم هذا الدرس برنامجا كاملا مستقلا. يفتحه في مسودة جديدة ويحفظ تعديلاتك السابقة. يبقى التشغيل باختيارك.

    سم القيم واحسب

    يربط الارتباط اسما بقيمة مهيأة. تعلن دع / let ارتباطا ثابتا: لا يمكنك إسناد قيمة جديدة إلى الاسم لاحقا. تعلن متغير / var ارتباطا قابلا للتغيير يسمح بالإسناد لاحقا. يحتاج كلاهما إلى قيمة أولية. تقدم = هذه القيمة في التصريح. القيمتان 3 و7 عددان صحيحان صغيران، وتستنتج لبات نوعهما ص64 / i64، فلا يلزم كتابة النوع هنا.

    تجمع + عددين، وتضربهما *. يحسب تعبير مثل أيسر + أيمن قيمة باستخدام القيمتين المسميتين. هذه أسماء يختارها المبرمج وليست كلمات محجوزة. يستخدم المصدر العربي أيسر وأيمن وإجمالي، والإنجليزي left وright وtotal. لا يغير تبديل لغة الشرح أسماءك.

    تأخذ اطبع نصا، لذا نستخدم أولا نسق_ص64 / format_i64 لتحويل عدد من نوع ص64 إلى نصه العشري. تقرأ نسق_ص64(إجمالي) قيمة إجمالي وتعيد ذلك النص. تكتبه اطبع الخارجية. وتكتب تعليمة طباعة ثانية "\س" لإنهاء السطر. التنسيق والطباعة عمليتان منفصلتان، ولا تغير أي منهما إجمالي.

    المتصفح والمضيف الأصلي · لبات 0.7.0 · مصدر عربي

    التنفيذ: المتصفح والمضيف الأصلي · لبات 0.7.0

    المتطلبات السابقة:
    • اقرأ شرح المثال في الدرس المرتبط قبل التشغيل.

    الإدخال: لا يحتاج إلى أسطر إدخال.

    دالة ابدأ_الرئيسية() -> ص64 {
        دع أيسر = 3.
        دع أيمن = 7.
        دع إجمالي = أيسر + أيمن.
        اطبع(نسق_ص64(إجمالي)).
        اطبع("\س").
        أرجع 0.
    }
    
    تنزيل درس-الارتباطات.لبات

    النتائج المتوقعة
    {
      "browser": {
        "check": "success",
        "class": "success",
        "output": "10\n",
        "processStatus": 0
      },
      "native": {
        "check": 0,
        "status": 0,
        "output": "10\n"
      }
    }

    تهيئ دالة الدخول أيسر بالقيمة 3 وأيمن بالقيمة 7. ثم تهيئ إجمالي بمجموعهما، وهو 10، وتطبع 10\n. أخيرا تنهي أرجع 0 التنفيذ بصورة طبيعية. القيمة المحسوبة خرج وليست حالة العملية.

    توقع قبل التشغيل

    ما القيمة التي يحملها إجمالي؟ وما النص الحرفي المطبوع؟ إذا استبدلت + بـ *، فتوقع النتيجة الجديدة قبل التشغيل. يعطي الجمع 10 ويعطي الضرب 21. يطبع كل منهما مع نهاية سطر واحدة، وتبقى الحالة 0.

    اضرب بدلا من الجمع

    غير العامل فقط في تصريح إجمالي لحساب 3 * 7. الخرج المتوقع هو 21\n حرفيا، والحالة الطبيعية 0.

    اجعل البرنامج يضرب 3 في 7 ويطبع 21 ثم نهاية سطر واحدة.

    تلميح: غير أيسر + أيمن إلى أيسر * أيمن. أبق التنسيق العددي وتعليمة طباعة نهاية السطر المنفصلة.

    اعرض الإجابة المشروحة

    يضرب التعبير الجديد القيمتين المهيأتين، فتكون قيمة إجمالي هي 21. تعيد نسق_ص64 النص 21، وتضيف تعليمة الطباعة التالية نهاية السطر. يمكن أن تبقى الارتباطات الثلاثة ثابتة لأن أيا منها لا يحتاج إلى إسناد جديد.

    المتصفح والمضيف الأصلي · لبات 0.7.0 · مصدر عربي

    التنفيذ: المتصفح والمضيف الأصلي · لبات 0.7.0

    المتطلبات السابقة:
    • اقرأ شرح المثال في الدرس المرتبط قبل التشغيل.

    الإدخال: لا يحتاج إلى أسطر إدخال.

    دالة ابدأ_الرئيسية() -> ص64 {
        دع أيسر = 3.
        دع أيمن = 7.
        دع إجمالي = أيسر * أيمن.
        اطبع(نسق_ص64(إجمالي)).
        اطبع("\س").
        أرجع 0.
    }
    
    تنزيل درس-الارتباطات-حل.لبات

    النتائج المتوقعة
    {
      "browser": {
        "check": "success",
        "class": "success",
        "output": "21\n",
        "processStatus": 0
      },
      "native": {
        "check": 0,
        "status": 0,
        "output": "21\n"
      }
    }

    افهم خطأ الإسناد إلى ارتباط ثابت

    تحسب هذه النسخة الفاشلة عمدا 21، ثم تحاول إسناد إجمالي + 1 مجددا إلى الاسم الثابت إجمالي.

    المتصفح والمضيف الأصلي · لبات 0.7.0 · مصدر عربي

    التنفيذ: المتصفح والمضيف الأصلي · لبات 0.7.0

    المتطلبات السابقة:
    • اقرأ شرح المثال في الدرس المرتبط قبل التشغيل.

    الإدخال: لا يحتاج إلى أسطر إدخال.

    دالة ابدأ_الرئيسية() -> ص64 {
        دع أيسر = 3.
        دع أيمن = 7.
        دع إجمالي = أيسر * أيمن.
        إجمالي = إجمالي + 1.
        اطبع(نسق_ص64(إجمالي)).
        اطبع("\س").
        أرجع 0.
    }
    
    تنزيل درس-إسناد-ثابت.لبات

    النتائج المتوقعة
    {
      "browser": {
        "check": "source-error",
        "class": "source-error",
        "output": "",
        "reason": "immutable-assignment"
      },
      "native": {
        "check": 1,
        "status": 1,
        "output": "",
        "reason": "immutable-assignment"
      }
    }

    يبلغ التحقق عن immutable-assignment عند إجمالي في السطر 5 والعمود 5. اختر التشخيص للعثور على الاسم الذي تحاول التعليمة إسناد قيمة إليه. لا تنفذ أي طباعة، فلا ينتج الفشل خرجا من البرنامج. المشكلة هي السماح بتغيير الارتباط، وليست الحساب أو التنسيق.

    للتغيير المقصود، غير تصريح إجمالي من دع إلى متغير، أو من let إلى var في المصدر الإنجليزي المقدم. أبق الارتباطين الآخرين ثابتين. تصبح = اللاحقة إسنادا مسموحا، وتستبدل القيمة المخزنة بـ 22.

    المتصفح والمضيف الأصلي · لبات 0.7.0 · مصدر عربي

    التنفيذ: المتصفح والمضيف الأصلي · لبات 0.7.0

    المتطلبات السابقة:
    • اقرأ شرح المثال في الدرس المرتبط قبل التشغيل.

    الإدخال: لا يحتاج إلى أسطر إدخال.

    دالة ابدأ_الرئيسية() -> ص64 {
        دع أيسر = 3.
        دع أيمن = 7.
        متغير إجمالي = أيسر * أيمن.
        إجمالي = إجمالي + 1.
        اطبع(نسق_ص64(إجمالي)).
        اطبع("\س").
        أرجع 0.
    }
    
    تنزيل درس-التعديل.لبات

    النتائج المتوقعة
    {
      "browser": {
        "check": "success",
        "class": "success",
        "output": "22\n",
        "processStatus": 0
      },
      "native": {
        "check": 0,
        "status": 0,
        "output": "22\n"
      }
    }

    ينجح التحقق من التصحيح ويطبع 22\n مع حالة طبيعية 0. يظل الارتباط المعلن بـ متغير محتاجا إلى قيمة أولية. لا تحتاج إلى قابلية التغيير لمجرد حساب نتيجة جديدة مرة واحدة. راجع مرجع الارتباطات والتحكم للقواعد الأوسع.

    تحقق من فهمك

    اشرح لماذا يحتاج شكلا التصريح إلى قيم أولية، ولماذا يطبع الضرب 21، ولماذا يحتاج مثال التغيير وحده إلى متغير. أصلح الإسناد الفاشل وقارن 22\n بتوقعك. لا تحفظ درجة أو تقدما، ويبقى التنقل مفتوحا. تابع الشروط حين تختار.

    تصفح الصفحات