Menu
CoddyTech

Urutkan dan Balikkan

Termasuk bagian Dasar-Dasar dalam perjalanan GDScript di Coddy. Pelajaran 76 dari 92.

sort() mengurutkan elemen array dalam urutan menaik. Fungsi ini mengubah array itu sendiri:

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

sort() tidak mengembalikan apa pun, jadi print(scores.sort()) adalah error. Urutkan terlebih dahulu, lalu cetak.

String diurutkan berdasarkan abjad, dan huruf kapital berada sebelum huruf kecil: ["bob", "Cleo", "ana"] menjadi ["Cleo", "ana", "bob"].

reverse() membalik urutan array saat ini tanpa mengurutkannya. Untuk mengurutkan secara menurun, urutkan terlebih dahulu lalu balik urutannya:

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

Menetapkan array ke variabel lain tidak menyalinnya: kedua variabel lalu menggunakan array yang sama, dan mengurutkan salah satunya akan mengurutkan yang lain. Untuk mempertahankan urutan aslinya, urutkan salinan yang dibuat dengan 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

Tantangan

Mudah

Program membaca satu baris bilangan cacah yang dipisahkan dengan koma ke dalam numbers (sudah ditulis). Cetak tiga baris:

  1. Original: dan bilangan-bilangan dalam urutan aslinya
  2. Ascending: dan bilangan-bilangan yang diurutkan dari terkecil ke terbesar
  3. Descending: dan bilangan-bilangan yang diurutkan dari terbesar ke terkecil

Untuk input 5,3,9,1, output-nya adalah:

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

Coba sendiri

extends Node

func _ready():
	var parts := OS.read_string_from_stdin().split(",")
	var numbers: Array[int] = []
	for part in parts:
		numbers.append(int(part))
	# Tulis kodemu di bawah ini
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler GDScript online