Menu
CoddyTech

الترتيب والعكس

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

ترتّب sort() عناصر المصفوفة ترتيبًا تصاعديًا. وهي تغيّر المصفوفة نفسها:

var scores := [5, 1, 9, 3]
scores.sort()
print(scores)
[1, 3, 5, 9]

لا تُرجع sort() أي شيء، لذا فإن print(scores.sort()) خطأ. رتّب أولًا، ثم اطبع.

تُرتَّب السلاسل النصية أبجديًا، وتأتي الأحرف الكبيرة قبل الأحرف الصغيرة: ["bob", "Cleo", "ana"] تصبح ["Cleo", "ana", "bob"].

تعكس reverse() الترتيب الحالي للمصفوفة، دون فرزها. للفرز بترتيب تنازلي، قم بالفرز أولًا ثم اعكس الترتيب:

var hp := [7, 2, 9, 4]
hp.reverse()
print(hp)
hp.sort()
hp.reverse()
print(hp)
[4, 9, 2, 7]
[9, 7, 4, 2]

إن إسناد مصفوفة إلى متغير آخر لا ينسخها: فكلا المتغيرين يستخدمان المصفوفة نفسها، وترتيب أحدهما يرتب الآخر أيضًا. للحفاظ على الترتيب الأصلي، رتّب نسخة أُنشئت باستخدام duplicate():

var original := [5, 3, 9]
var sorted_copy := original.duplicate()
sorted_copy.sort()
print(original, " ", sorted_copy)
[5, 3, 9] [3, 5, 9]
challenge icon

التحدي

سهل

يقرأ البرنامج سطرًا من الأعداد الصحيحة مفصولة بفواصل في numbers (مكتوب مسبقًا). اطبع ثلاثة أسطر:

  1. Original: والأعداد بترتيبها الأصلي
  2. Ascending: والأعداد مرتبة من الأصغر إلى الأكبر
  3. Descending: والأعداد مرتبة من الأكبر إلى الأصغر

للإدخال 5,3,9,1، يكون الناتج:

Original: [5, 3, 9, 1]
Ascending: [1, 3, 5, 9]
Descending: [9, 5, 3, 1]

جرّب بنفسك

extends Node

func _ready():
	var parts := OS.read_string_from_stdin().split(",")
	var numbers: Array[int] = []
	for part in parts:
		numbers.append(int(part))
	# اكتب الكود الخاص بك أدناه
quiz iconاختبر نفسك

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

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

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