تخطَّ إلى المحتوى

7. القواميس

أن تربط مفتاحاً بقيمة، وتمرّ على المفاتيح بترتيب إدراجها.

  • القاموس يربط كل مفتاح بقيمة: {"سارة": 30}. تصل إلى القيمة بمفتاحها: اعمار["سارة"].
  • إسناد قيمة إلى مفتاح جديد يضيفه إلى القاموس.
  • لكل اسم في اعمار: تمر على المفاتيح بترتيب إدراجها. ومفاتيح(ق) ترجع قائمة بها بالترتيب نفسه.
مثال
اعمار = {"سارة": 30, "علي": 25}
اعمار["منى"] = 28
لكل اسم في اعمار:
اطبع(اسم, ": ", اعمار[اسم])
اطبع(مفاتيح(اعمار))
المخرج المسجَّل في الكتاب المرجعيmeem برنامج.م · 0.10.0
سارة: 30علي: 25منى: 28[سارة, علي, منى]

جرّب هذا المثال في الملعب

قراءة مفتاح غير موجود خطأ تشغيل. تحقق منه بـ يحوي أولاً:

يسبب الخطأ
ع = {"سارة": 30}
اطبع(ع["علي"])
المخرج المسجَّل في الكتاب المرجعيmeem برنامج.م · 0.10.0
[خطأ تشغيل E0337] سطر 2:7 - المفتاح 'علي' غير موجود في القاموس  اطبع(ع["علي"])

رمز الخروج: 3

في فهرس الأخطاء: E0337

جرّب هذا المثال في الملعب

يصلحه
ع = {"سارة": 30}
اذا يحوي(ع, "علي"):
اطبع(ع["علي"])
غير ذلك:
اطبع("لا عمر لعلي")
المخرج المسجَّل في الكتاب المرجعيmeem برنامج.م · 0.10.0
لا عمر لعلي

جرّب هذا المثال في الملعب

عدّ تكرار كل حرف في «مرحبا بالعالم» دون المسافة، واطبع العدد لكل حرف بترتيب أول ظهوره.

اعرض الحل
الحل
كلمة = "مرحبا بالعالم"
عداد قاموس[رمز, عدد] = {}
لكل ح في كلمة:
اذا ح == ' ':
تجاوز
اذا يوجد(عداد, ح):
عداد[ح] = عداد[ح] + 1
غير ذلك:
عداد[ح] = 1
لكل ح في عداد:
اطبع(ح, ": ", عداد[ح])
حرر(عداد)
مخرجات مسجّلة من المجمّعmeem 07_حل.م · meem 0.10.0+b01b55f
م: 2ر: 1ح: 1ب: 2ا: 3ل: 2ع: 1

الأنواع · المدمجات: مفاتيح ويحوي