Menu
CoddyTech

Pengirisan array

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

method slice() mengembalikan array baru yang berisi sebagian elemen. slice(begin, end) mengambil elemen mulai dari indeks begin hingga indeks end, tetapi tidak termasuk indeks tersebut:

var numbers := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(numbers.slice(2, 6))
[2, 3, 4, 5]

Tanpa end, slice berlanjut hingga akhir array:

print(numbers.slice(5))
[5, 6, 7, 8, 9]

Indeks negatif dihitung dari akhir. slice(-3) mengambil tiga elemen terakhir, dan slice(0, -2) mengambil semua elemen kecuali dua elemen terakhir:

print(numbers.slice(-3))
print(numbers.slice(0, -2))
[7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7]

Argumen ketiga, step, mengambil setiap elemen ke-n. slice(1, 8, 2) mengambil indeks 1, 3, 5, dan 7:

print(numbers.slice(1, 8, 2))
[1, 3, 5, 7]

slice() tidak mengubah array asli: numbers tetap berisi sepuluh elemen.

challenge icon

Tantangan

Mudah

Program membaca satu baris item yang dipisahkan dengan koma ke dalam array items (sudah ditulis). Cetak bagian tengah array dengan slice():

  • Jika jumlah item ganjil, cetak item tengah dan satu item di setiap sisinya (3 item; jika hanya ada satu item, cetak item itu)
  • Jika jumlahnya genap, cetak dua item tengah

Untuk apple,banana,orange,grape, output-nya adalah ["banana", "orange"], dan untuk a,b,c,d,e, output-nya adalah ["b", "c", "d"].

Coba sendiri

extends Node

func _ready():
	var items := OS.read_string_from_stdin().split(",")
	# Cetak item-item di tengah
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