Update app.py
Browse files
app.py
CHANGED
|
@@ -84,151 +84,225 @@ def get_llm():
|
|
| 84 |
n_gpu_layers=int(os.getenv("N_GPU_LAYERS", "-1")), verbose=False)
|
| 85 |
print("[law-app] النموذج جاهز.")
|
| 86 |
return _llm
|
| 87 |
-
|
| 88 |
LESSONS = [
|
| 89 |
-
{
|
| 90 |
-
"title": "الدرس الأول — المبادئ التوجيهية للإثبات والمحاكمة العادلة",
|
| 91 |
-
"text": """
|
| 92 |
-
بناءً على الفقه الجنائي الفرنسي، يرتكز الإطار العام للخصومة الجزائية على مبدأين أساسيين: المحاكمة العادلة وحرية الإثبات.
|
| 93 |
|
| 94 |
-
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 104 |
""",
|
| 105 |
"questions": [
|
| 106 |
-
{"q": "
|
| 107 |
-
"hint": "
|
| 108 |
-
{"q": "ما ه
|
| 109 |
-
"hint": "
|
| 110 |
-
{"q": "
|
| 111 |
-
"hint": "
|
| 112 |
-
]
|
| 113 |
},
|
| 114 |
{
|
| 115 |
-
"title": "الدرس الثاني —
|
| 116 |
"text": """
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
الج
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 128 |
""",
|
| 129 |
"questions": [
|
| 130 |
-
{"q": "ا
|
| 131 |
-
"hint": "
|
| 132 |
-
{"q": "
|
| 133 |
-
"hint": "ا
|
| 134 |
-
{"q": "
|
| 135 |
-
"hint": "
|
| 136 |
-
]
|
| 137 |
},
|
| 138 |
{
|
| 139 |
-
"title": "الدرس الثالث — ال
|
| 140 |
"text": """
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
ال
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
|
|
|
|
|
|
|
|
|
| 151 |
""",
|
| 152 |
"questions": [
|
| 153 |
-
{"q": "
|
| 154 |
-
"hint": "
|
| 155 |
-
{"q": "م
|
| 156 |
-
"hint": "
|
| 157 |
-
{"q": "
|
| 158 |
-
"hint": "
|
| 159 |
-
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 160 |
},
|
| 161 |
{
|
| 162 |
-
"title": "الدرس الرابع — الت
|
| 163 |
"text": """
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
ال
|
| 167 |
-
|
| 168 |
-
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 173 |
""",
|
| 174 |
"questions": [
|
| 175 |
-
{"q": "
|
| 176 |
-
"hint": "
|
| 177 |
-
{"q": "
|
| 178 |
-
"hint": "
|
| 179 |
-
|
| 180 |
-
"hint": "يُسمى الطلب الإضافي للتحقيق (Réquisitoire supplétif)."},
|
| 181 |
-
],
|
| 182 |
},
|
| 183 |
{
|
| 184 |
-
"title": "الدرس الخامس — ال
|
| 185 |
"text": """
|
| 186 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 187 |
|
| 188 |
-
ا
|
| 189 |
-
|
| 190 |
-
|
| 191 |
|
| 192 |
-
|
| 193 |
-
ينص المبدأ الفقهي الشهير "Non bis in idem" على أنه لا يجوز محاكمة الشخص عن نفس الفعل مرتين. ويشترط لنجاح هذا الدفع توافر ثلاثة عناصر: وحدة الوقائع، وحدة الأطراف، ووحدة السبب.
|
| 194 |
-
📌 الإسقاط على القانون الجزائري: تُعتبر "قوة الشيء المقضي فيه" سبباً من أسباب انقضاء الدعوى العمومية (المادة 9). وقد نصت المادة (1) بصيغة صريحة: "لا يجوز متابعة أو محاكمة أو معاقبة شخص مرتين من أجل نفس الأفعال ولو تم إعطاؤها وصفا مغايرا".
|
| 195 |
""",
|
| 196 |
"questions": [
|
| 197 |
-
{"q": "
|
| 198 |
-
"hint": "
|
| 199 |
-
{"q": "
|
| 200 |
-
"hint": "
|
| 201 |
-
|
| 202 |
-
"hint": "لأنها كانت تحرم المتهم الغائب من أي حق في الدفاع حتى لو حضر محاميه، وهو ما يتعارض مع الحقوق الأساسية للمحاكمة العادلة."},
|
| 203 |
-
],
|
| 204 |
},
|
| 205 |
{
|
| 206 |
-
"title": "الدرس السادس —
|
| 207 |
"text": """
|
| 208 |
-
|
| 209 |
|
| 210 |
-
|
| 211 |
-
هي بديل للمتابعة يعتمد على الصلح بين الجاني والضحية. تهدف إلى جبر الضرر وإعادة السلم الاجتماعي دون الحاجة لصدور حكم إدانة.
|
| 212 |
-
📌 الإسقاط على القانون الجزائري: نظمها المشرع في المواد (59 إلى 68). يمكن لوكيل الجمهورية اقتراحها قبل تحريك الدعوى في جنح معينة (كخيانة الأمانة، التهديد، السب العلني). تنفيذ اتفاق الوساطة يؤدي إلى انقضاء الدعوى العمومية (المادة 9).
|
| 213 |
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
|
|
|
| 217 |
|
| 218 |
-
|
| 219 |
-
|
| 220 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 221 |
""",
|
| 222 |
"questions": [
|
| 223 |
-
{"q": "م
|
| 224 |
-
"hint": "
|
| 225 |
-
{"q": "
|
| 226 |
-
"hint": "ي
|
| 227 |
-
{"q": "
|
| 228 |
-
"hint": "
|
| 229 |
-
]
|
| 230 |
}
|
|
|
|
| 231 |
]
|
|
|
|
|
|
|
| 232 |
LISTEN_SECONDS = 10 # 900 في بيئة الإنتاج (15 دقيقة)
|
| 233 |
PASS_SCORE = 6
|
| 234 |
|
|
|
|
| 84 |
n_gpu_layers=int(os.getenv("N_GPU_LAYERS", "-1")), verbose=False)
|
| 85 |
print("[law-app] النموذج جاهز.")
|
| 86 |
return _llm
|
|
|
|
| 87 |
LESSONS = [
|
|
|
|
|
|
|
|
|
|
|
|
|
| 88 |
|
| 89 |
+
{
|
| 90 |
+
"title": "الدرس الأول — الأعداد من 0 إلى 999 (علب الحلوى السحرية)",
|
| 91 |
+
"text": """
|
| 92 |
+
مرحباً بك يا بطل! تخيل أن لدينا ثلاث علب نضع فيها قطع الحلوى السحرية:
|
| 93 |
+
1. علبة الوحدات (و): نضع فيها حبات الحلوى الفردية (من 1 إلى 9).
|
| 94 |
+
2. علبة العشرات (ع): نضع فيها علباً صغيرة، كل علبة بها 10 حبات.
|
| 95 |
+
3. علبة المئات (م): نضع فيها علباً كبيرة، كل علبة بها 100 حبة.
|
| 96 |
+
|
| 97 |
+
أولاً: كيف نقرأ ونكتب العدد؟ (الصفحة 17)
|
| 98 |
+
لو كان لدينا العدد (659):
|
| 99 |
+
- ننظر للعلبة الكبيرة أولاً (المئات): لدينا 6 علب من فئة 100، فنقول: "ستمائة".
|
| 100 |
+
- ثم ننظر لعلبة الوحدات: لدينا 9 حبات فردية، فنقول: "وتسعة".
|
| 101 |
+
- ثم علبة العشرات: لدينا 5 علب من فئة 10، فنقول: "وخمسون".
|
| 102 |
+
نقرأ العدد كاملاً هكذا: "سِتُّمِائَةٍ وَتِسْعَةٌ وَخَمْسُونَ".
|
| 103 |
+
|
| 104 |
+
ثانياً: كيف نفكك العدد؟ (الصفحة 17)
|
| 105 |
+
التفكيك يعني أن نفتح العلب ونرى كم حبة حلوى بداخلها بالكامل:
|
| 106 |
+
- التفكيك بالجمع: نأخذ كل منزلة ونكتب قيمتها:
|
| 107 |
+
659 = 600 + 50 + 9
|
| 108 |
+
- التفكيك بالضرب والجمع: نكتب كم علبة لدينا في كل منزلة:
|
| 109 |
+
659 = (6 × 100) + (5 × 10) + 9
|
| 110 |
""",
|
| 111 |
"questions": [
|
| 112 |
+
{"q": "اكتب العدد (أربعمائة واثنان وثلاثون) بالأرقام ثم فككه تفكيكاً بالجمع.",
|
| 113 |
+
"hint": "العدد يكتب 432، وتفكيكه هو: 432 = 400 + 30 + 2 (انظر الصفحة 17)."},
|
| 114 |
+
{"q": "ما هي مرتبة الرقم 5 في العدد 527؟ وكم حبة حلوى يمثل؟",
|
| 115 |
+
"hint": "مرتبته هي المئات (م)، ويمثل 500 حبة حلوى سحرية (انظر الصفحة 17)."},
|
| 116 |
+
{"q": "افتح علب العدد 854 وفككه بطريقة الضرب والجمع.",
|
| 117 |
+
"hint": "التفكيك هو: 854 = (8 × 100) + (5 × 10) + 4 (انظر الصفحة 25)."}
|
| 118 |
+
]
|
| 119 |
},
|
| 120 |
{
|
| 121 |
+
"title": "الدرس الثاني — الجمع والطرح (استراتيجيات الحساب الذكي والضفدع القفاز)",
|
| 122 |
"text": """
|
| 123 |
+
مرحبا يا ذكي! هناك طرق ممتعة تساعدك على الجمع والطرح بسرعة في ذهنك:
|
| 124 |
+
|
| 125 |
+
أولاً: الجمع بالتفكيك والإتمام (الصفحة 14)
|
| 126 |
+
لو أردنا حساب: 54 + 7
|
| 127 |
+
- العدد 54 قريب جداً من الـ 60 (يحتاج فقط إلى 6 خطوات ليصل إليها).
|
| 128 |
+
- نذهب للـ 7 ونأخذ منها 6 خطوات، فتبقى الـ 7 عبارة عن (6 + 1).
|
| 129 |
+
- الآن نجمع بسهولة: 54 + 6 = 60، ثم نضيف الـ 1 المتبقي: 60 + 1 = 61.
|
| 130 |
+
- إذن: 54 + 7 = 61.
|
| 131 |
+
|
| 132 |
+
ثانياً: الطرح بالشريط العددي وقفزة الضفدع (ا��صفحة 14)
|
| 133 |
+
لو أردنا حساب: 54 - 7
|
| 134 |
+
- تخيل أنك ضفدع يقف عند الرقم 54، وتريد القفز للخلف 7 خطوات.
|
| 135 |
+
- أولاً، اقفز قفزة سهلة للخلف بـ 4 خطوات لتصل للرقم المستدير السهل 50.
|
| 136 |
+
- بقيت لك 3 خطوات لتكمل قفزاتك السبع؛ اقفزها للخلف من الـ 50 لتصل إلى 47.
|
| 137 |
+
- إذن: 54 - 7 = 47.
|
| 138 |
+
|
| 139 |
+
ثالثاً: الجمع العمودي بالاحتفاظ (الصفحة 28)
|
| 140 |
+
لو أردنا حساب: 191 + 547
|
| 141 |
+
- نرتب الأرقام بدقة: الوحدات تحت الوحدات، العشرات تحت العشرات، والمئات تحت المئات.
|
| 142 |
+
- نجمع الوحدات: 1 + 7 = 8.
|
| 143 |
+
- نجمع العشرات: 9 + 4 = 13. لا نكتب 13 كاملة! نكتب 3 ونضع الـ 1 (كضيف) فوق المئات.
|
| 144 |
+
- نجمع المئات مع الضيف: 1 (الضيف) + 1 + 5 = 7.
|
| 145 |
+
- النتيجة النهائية هي: 738.
|
| 146 |
""",
|
| 147 |
"questions": [
|
| 148 |
+
{"q": "احسب بذهنك مستعملاً التفكيك والإتمام إلى العشرة الموالية: 59 + 3.",
|
| 149 |
+
"hint": "نأخذ 1 من الـ 3 لنتمم 59 إلى 60، ويبقى 2. النتيجة هي 60 + 2 = 62 (انظر الصفحة 14)."},
|
| 150 |
+
{"q": "باستخدام قفزة الضفدع للخلف على الشريط العددي، احسب: 92 - 23.",
|
| 151 |
+
"hint": "اطرح 20 خطوة لتصل إلى 72، ثم اطرح 3 خطوات لتصل إلى 69. النتيجة هي 69 (انظر الصفحة 20)."},
|
| 152 |
+
{"q": "أوجد نتيجة العملية التالية عمودياً مع الانتباه للضيف المحتفظ به: 325 + 12.",
|
| 153 |
+
"hint": "نرتب الوحدات والعشرات بدقة: 5+2=7 في الوحدات، 2+1=3 في العشرات، و3 في المئات. النتيجة هي 337 (انظر الصفحة 24)."}
|
| 154 |
+
]
|
| 155 |
},
|
| 156 |
{
|
| 157 |
+
"title": "الدرس الثالث — الهندسة (خريطة الكنز والقطار المستقيم)",
|
| 158 |
"text": """
|
| 159 |
+
مرحباً بك يا بطل الهندسة! اليوم سنتعلم درسين رائعين في الفضاء والرسم:
|
| 160 |
+
|
| 161 |
+
أولاً: تحديد المواقع على المرصوفة (خريطة الكنز) (الصفحة 16)
|
| 162 |
+
المرصوفة هي شبكة مربعات تشبه خريطة الكنز السري.
|
| 163 |
+
- الأسطر مرقمة بأرقام (1، 2، 3...) والأعمدة معلمة بحروف (أ، ب، ج...).
|
| 164 |
+
- لتحديد مكان أي حيوان أو كنز، ننظر للعمود والسطر اللذين يلتقي عندهما.
|
| 165 |
+
- نكتب الموقع هكذا: (العمود ، السطر).
|
| 166 |
+
- مثلاً: إذا كان "الأسد" يقع في العمود (أ) والسطر (3)، نكتب موقعه: (أ ، 3).
|
| 167 |
+
|
| 168 |
+
ثانياً: الاستقامية ورسم الخطوط (الصفحة 31)
|
| 169 |
+
- هل تعرف كيف تسير سكة القطار؟ تسير في خط مستقيم تماماً.
|
| 170 |
+
- لمعرفة هل النقاط مرسومة في استقامية واحدة أم لا، نضع حافة مسطرتنا عليها.
|
| 171 |
+
- إذا لامست حافة المسطرة جميع النقاط في نفس الوقت، واستطعنا رسم خط مستقيم يجمعها كلها، نقول: "هذه النقط في استقامية واحدة".
|
| 172 |
""",
|
| 173 |
"questions": [
|
| 174 |
+
{"q": "إذا كان الغزال يقع في العمود (ج) والسطر (2)، كيف نكتب موقع خانته؟",
|
| 175 |
+
"hint": "نكتب موقعه داخل قوسين هكذا: (ج ، 2) (انظر الصفحة 16)."},
|
| 176 |
+
{"q": "كيف نتأكد من أن النقط المرسومة على كراسك تقع في استقامية واحدة؟",
|
| 177 |
+
"hint": "نضع حافة المسطرة عليها؛ فإذا لامست حافة المسطرة كل النقط معاً، فهي في استقامية واحدة (انظر الصفحة 31)."},
|
| 178 |
+
{"q": "إذا تحرك رائد خطوة واحدة لليمين وخطوة للأعلى من الخانة (ب ، 4)، فما هي خانته الجديدة؟",
|
| 179 |
+
"hint": "العمود ب لليمين يصبح ج، والسطر 4 للأعلى يصبح 3. الخانة الجديدة هي (ج ، 3) (انظر الصفحة 16)."}
|
| 180 |
+
]
|
| 181 |
+
}
|
| 182 |
+
, {
|
| 183 |
+
"title": "الدرس الثالث — مقارنة أطوال (سباق النملات الذكيات)",
|
| 184 |
+
"text": """
|
| 185 |
+
مرحباً بك يا بطل! في هذا الدرس سنتعلم كيف نقارن بين الأطوال [Page 15].
|
| 186 |
+
|
| 187 |
+
تخيل أن لدينا ثلاث نملات ذكيات يتسابقن للوصول إلى قطعة سكر:
|
| 188 |
+
- النملة الأولى مشت في طريق أخضر متعرج.
|
| 189 |
+
- النملة الثانية مشت في طريق بنفسجي منحنٍ.
|
| 190 |
+
- النملة الثالثة مشت في طريق برتقالي منكسر.
|
| 191 |
+
|
| 192 |
+
كيف نعرف أي طريق هو الأقصر لتفوز النملة بالجائزة؟
|
| 193 |
+
1. المسطرة الصلبة لا تكفي: لأن الطرق ليست مستقيمة تماماً!
|
| 194 |
+
2. الحل السحري: نستخدم "خيطاً" أو "شريطاً من الورق المقوى".
|
| 195 |
+
3. طريقة القياس:
|
| 196 |
+
- نضع الخيط فوق الطريق المتعرج بدقة من البداية إلى الن��اية.
|
| 197 |
+
- نقطع الخيط أو نضع علامة عليه عند نهاية الطريق.
|
| 198 |
+
- نفرد الخيط ليصبح مستقيماً، ثم نقيس طوله بالمسطرة المدرجة!
|
| 199 |
+
- نفعل نفس الشيء مع بقية الطرق، والطريق الذي يعطينا أقصر خيط هو الطريق الأقصر للفوز.
|
| 200 |
+
|
| 201 |
+
تعلمتُ: لمقارنة أطوال صغيرة أو منحنية، نستعمل خيطاً أو شريطاً من الورق، ثم نقيسه بالمسطرة.
|
| 202 |
+
""",
|
| 203 |
+
"questions": [
|
| 204 |
+
{"q": "إذا كان لدينا طريقان متعرجان، كيف نقارن بين طوليهما بدون مسطرة مباشرة؟",
|
| 205 |
+
"hint": "نستخدم خيطاً نضعه فوق كل طريق، ثم نقارن طولي الخيطين لنرى أيهما أطول (انظر الصفحة 15)."},
|
| 206 |
+
{"q": "مستعيناً بالمسطرة، رتب المسارات التالية تصاعدياً (من الأقصر للأطول): 1500m، 2km 30m، 1km 25m.",
|
| 207 |
+
"hint": "نعلم أن 1km = 1000m. إذن: الأول هو 1025m، والثاني 1500m، والثالث 2030m (انظر الصفحة 57)."}
|
| 208 |
+
]
|
| 209 |
},
|
| 210 |
{
|
| 211 |
+
"title": "الدرس الرابع — التنقل على مرصوفة (رحلة رائد ومواقع الحيوانات)",
|
| 212 |
"text": """
|
| 213 |
+
أهلاً بك يا مستكشف! اليوم سنتعلم كيف نتحرك على المرصوفة ونشفر المسارات [Page 16].
|
| 214 |
+
|
| 215 |
+
المرصوفة هي شبكة مربعات تشبه خريطة الألعاب:
|
| 216 |
+
- الأعمدة معلمة بحروف من الأسفل: (أ، ب، ج، د، هـ...).
|
| 217 |
+
- الأسطر مرقمة من الجانب: (1، 2، 3، 4، 5، 6...).
|
| 218 |
+
|
| 219 |
+
أولاً: كيف نجد موقع حيوان على المرصوفة؟
|
| 220 |
+
لتحديد مكان "الغزالة" أو "الدب"، نقوم بخطوتين:
|
| 221 |
+
1. ننزل بأعيننا عمودياً لنرى الحرف المقابل لها (العمود).
|
| 222 |
+
2. نذهب بأعيننا أفقياً نحو الجانب لنرى الرقم المقابل لها (السطر).
|
| 223 |
+
نكتب الموقع داخل قوسين هكذا: (الحرف ، الرقم).
|
| 224 |
+
مثال: إذا كان الدب يقع في العمود (أ) والسطر (3)، فإن تشفيره هو: (أ ، 3).
|
| 225 |
+
|
| 226 |
+
ثانياً: كيف نشفر مسار التنقل؟
|
| 227 |
+
عندما يتحرك رائد من المدرسة إلى المنزل، فإنه يتبع خطوات ملونة.
|
| 228 |
+
- نرمز للحركة نحو اليمين بسهم: (→)
|
| 229 |
+
- نرمز للحركة نحو الأسفل بسهم: (↓)
|
| 230 |
+
تشفير المسلك هو كتابة تتابع هذه الأسهم خطوة بخطوة حتى نصل للنهاية.
|
| 231 |
""",
|
| 232 |
"questions": [
|
| 233 |
+
{"q": "إذا كان الفيل يقع في العمود (ج) والسطر (2)، اكتب تشفير موقع الفيل.",
|
| 234 |
+
"hint": "التشفير يكتب بين قوسين هكذا: (ج ، 2) (انظر الصفحة 16)."},
|
| 235 |
+
{"q": "ما هي الحركات التي نرمز لها بالأسهم (→) و (↓) على المرصوفة؟",
|
| 236 |
+
"hint": "السهم (→) يعني خطوة لليمين على السطر، والسهم (↓) يعني خطوة للأسفل على العمود (انظر الصفحة 16)."}
|
| 237 |
+
]
|
|
|
|
|
|
|
| 238 |
},
|
| 239 |
{
|
| 240 |
+
"title": "الدرس الخامس — الأعداد من 0 إلى 999 (سباق الأرقام الكبيرة)",
|
| 241 |
"text": """
|
| 242 |
+
مرحباً بك في عالم الأرقام الكبيرة! اليوم سنتعلم كيف نقرأ ونكتب الأعداد التي تتكون من 3 أرقام [Page 17].
|
| 243 |
+
|
| 244 |
+
عندما نرى عدداً مكتوباً على قميص عداء في السباق، مثل: (435):
|
| 245 |
+
- الرقم 5 يمثل الوحدات (و).
|
| 246 |
+
- الرقم 3 يمثل العشرات (ع).
|
| 247 |
+
- الرقم 4 يمثل المئات (م).
|
| 248 |
+
|
| 249 |
+
أولاً: كيف نقرأ هذا العدد الكبير؟
|
| 250 |
+
نبدأ دائماً بقراءة المئات أولاً، ثم نقفز لقراءة الوحدات، وأخيراً نقرأ العشرات:
|
| 251 |
+
- نقرأ 400: "أربعمائة".
|
| 252 |
+
- نقرأ 5: "وخمسة".
|
| 253 |
+
- نقرأ 30: "وثلاثون".
|
| 254 |
+
فيصبح العدد: "أربعمائة وخمسة وثلاثون".
|
| 255 |
|
| 256 |
+
ثانياً: انتبه للأفخاخ!
|
| 257 |
+
- العدد "سبعمائة وثلاثة" يُكتب بالأرقام: (703)، وليس (730) لأن العشرات صفر، وليس (307)!
|
| 258 |
+
- العدد الذي فيه 5 وحدات و 0 عشرات و 1 مئات هو: (105).
|
| 259 |
|
| 260 |
+
تعلمتُ: أكتب الأعداد بالحروف والكلمات من خلال تركيبها بانتظام ومراعاة قيمة كل رقم (وحدات، عشرات، مئات).
|
|
|
|
|
|
|
| 261 |
""",
|
| 262 |
"questions": [
|
| 263 |
+
{"q": "اكتب العدد (ثمانمائة وستة وخمسون) بالأرقام.",
|
| 264 |
+
"hint": "نكتب 8 في المئات، و6 في الوحدات، و5 في العشرات، فيصبح: 856 (انظر الصفحة 17)."},
|
| 265 |
+
{"q": "تخيل عدداً يملك 5 وحدات، و9 عشرات، و9 مئات. ما هو هذا العدد؟ وكيف نقرؤه؟",
|
| 266 |
+
"hint": "العدد هو 995، ونقرؤه: تسعمائة وخمسة وتسعون (انظر الصفحة 17)."}
|
| 267 |
+
]
|
|
|
|
|
|
|
| 268 |
},
|
| 269 |
{
|
| 270 |
+
"title": "الدرس السادس — الجمع والطرح: العد بإضافة أو طرح 1 أو 10 أو 100",
|
| 271 |
"text": """
|
| 272 |
+
مرحباً بك في لعبة الحساب السريع والأنماط العددية! [Page 18].
|
| 273 |
|
| 274 |
+
سنتعلم اليوم كيف نزيد أو ننقص الأرقام بذكاء كبير وفي ثوانٍ معدودة:
|
|
|
|
|
|
|
| 275 |
|
| 276 |
+
أولاً: إضافة أو طرح 1 (لعبة الوحدات)
|
| 277 |
+
عندما نزيد أو ننقص 1، يتغير فقط رقم "الوحدات" في العدد:
|
| 278 |
+
- مثال للإضافة: 500 ← 501 ← 502... (تغير الرقم الأخير فقط).
|
| 279 |
+
- مثال للطرح: 500 ← 499 ← 498...
|
| 280 |
|
| 281 |
+
ثانياً: إضافة أو طرح 10 (لعبة العشرات)
|
| 282 |
+
عندما نزيد أو ننقص 10، يتغير فقط رقم "العشرات" في الوسط:
|
| 283 |
+
- مثال للطرح: 874 ← 864 ← 854... (لاحظ ��ن العشرات تنقص بـ 1 في كل خطوة: 7، 6، 5).
|
| 284 |
+
- مثال للإضافة: 365 + 10 = 375.
|
| 285 |
+
|
| 286 |
+
ثالثاً: إضافة أو طرح 100 (لعبة المئات)
|
| 287 |
+
عندما نزيد أو ننقص 100، يتغير فقط الرقم الأول من اليسار وهو "المئات":
|
| 288 |
+
- مثال للإضافة: 3 ← 103 ← 203 ← 303... (المئات تزيد بـ 1 في كل مرة).
|
| 289 |
+
- مثال للطرح: 904 - 100 = 804.
|
| 290 |
+
|
| 291 |
+
تعلمتُ: الحساب السريع والعد الشفهي بإضافة أو طرح 1 أو 10 أو 100 يسهل عليّ حل العمليات الصعبة في ذهني!
|
| 292 |
""",
|
| 293 |
"questions": [
|
| 294 |
+
{"q": "أكمل السلسلة التالية بذكاء: 432 ← 422 ← 412 ← ... ",
|
| 295 |
+
"hint": "نلاحظ أن مرتبة العشرات تنقص بـ 10 في كل مرة، إذن العدد الموالي هو: 402 (انظر الصفحة 18)."},
|
| 296 |
+
{"q": "احسب ذهنياً وبسرعة فائقة: 643 + 100.",
|
| 297 |
+
"hint": "نضيف 1 إلى منزلة المئات فقط (الرقم 6 يصبح 7)، والنتيجة هي: 743 (انظر الصفحة 18)."},
|
| 298 |
+
{"q": "ما هو العدد المناسب للفراغ: ... + 100 = 320؟",
|
| 299 |
+
"hint": "نطرح 100 من الـ 320 (منزلة المئات تنقص بـ 1)، فيكون العدد هو: 220 (انظر الصفحة 18)."}
|
| 300 |
+
]
|
| 301 |
}
|
| 302 |
+
|
| 303 |
]
|
| 304 |
+
|
| 305 |
+
|
| 306 |
LISTEN_SECONDS = 10 # 900 في بيئة الإنتاج (15 دقيقة)
|
| 307 |
PASS_SCORE = 6
|
| 308 |
|