Menu
CoddyTech

التكرار عبر الخرائط

جزء من قسم الأساسيات في رحلة GO على Coddy. الدرس 92 من 109.

تتيح لك الكلمة المفتاحية range التكرار على جميع أزواج المفتاح والقيمة في الخريطة. وتُرجع المفتاح والقيمة لكل إدخال.

أنشئ خريطة لمخزون الفاكهة:

inventory := map[string]int{
    "apples": 5,
    "bananas": 8,
    "oranges": 12,
}

for fruit, quantity := range inventory {
    fmt.Printf("%s: %d\n", fruit, quantity)
}

تعرض النتيجة كل زوج من المفاتيح والقيم:

apples: 5
bananas: 8
oranges: 12

لا تضمن Go الترتيب الذي تزور به range عناصر الخريطة، لذلك قد تظهر هذه الأسطر بترتيب مختلف في كل مرة تُنفَّذ فيها الحلقة.

إذا كنت تحتاج إلى المفاتيح فقط، يمكنك حذف المتغير الثاني:

for fruit := range inventory {
    fmt.Println(fruit)
}
challenge icon

التحدي

مبتدئ

في هذا التحدي، ستتدرّب على التكرار عبر خريطة باستخدام الكلمة المفتاحية range في Go. لقد أُنشئت لك خريطة لدرجات الطلاب. مهمتك هي التكرار عبر الخريطة وطباعة اسم كل طالب ودرجته.

أكمل الشيفرة للتكرار عبر خريطة studentGrades وطباعة اسم كل طالب ودرجته بالتنسيق: Student: [name], Grade: [grade]

جرّب بنفسك

package main

import (
	"fmt"
	"sort"
)

func main() {
	// خريطة لدرجات الطلاب
	studentGrades := map[string]string{
		"Alice":  "A",
		"Bob":    "B",
		"Charlie": "B+",
		"David":  "A-",
		"Eva":    "C",
	}

	// اجمع أسماء الطلاب (المفاتيح) في شريحة لترتيبها
	var names []string
	for name := range studentGrades {
		names = append(names, name)
	}
	sort.Strings(names)


	// TODO: كرّر المرور على قائمة أسماء الطلاب المرتّبة
	// واطبع اسم كل طالب ودرجته بالتنسيق التالي:
	// "Student: [name], Grade: [grade]"
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم Go عبر الإنترنت