Menu
CoddyTech

While Loop

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

for loop berjalan satu kali untuk setiap angka dalam rentang. while loop terus berjalan selama kondisi bernilai true:

var count := 3
while count > 0:
	print(count)
	count -= 1
print("Go!")
3
2
1
Go!

Kondisi diperiksa sebelum setiap iterasi. Saat count menjadi 0, count > 0 bernilai false, sehingga perulangan berhenti dan program berlanjut setelahnya. Jika kondisi bernilai false sejak awal, blok tersebut tidak pernah dijalankan.

Blok tersebut harus mengubah sesuatu yang menjadi dasar kondisi. Di sini, count -= 1 membuat count lebih dekat ke 0. Tanpanya, kondisi akan tetap true dan perulangan tidak akan pernah berakhir.

Gunakan while saat kamu belum tahu sebelumnya berapa banyak iterasi yang diperlukan. Contohnya, kode ini mencari pangkat 2 terkecil yang lebih besar dari 27:

var number := 27
var power_of_two := 1
while power_of_two <= number:
	power_of_two *= 2
print(power_of_two)

power_of_two menjadi dua kali lipat pada setiap iterasi: 2, 4, 8, 16, 32. Pada 32, power_of_two <= number bernilai false, jadi program mencetak 32.

challenge icon

Tantangan

Mudah

Program membaca satu bilangan desimal ke dalam number.

Gunakan while loop untuk membagi number dengan 2 selama nilainya lebih besar dari atau sama dengan 3.5. Lalu cetak hasilnya, yaitu nilai pertama yang lebih kecil dari 3.5.

Contohnya, untuk input 15, nilainya adalah 15, 7.5, 3.75, dan 1.875, sehingga program mencetak:

1.875

Jika input sudah lebih kecil dari 3.5, cetak tanpa mengubahnya. Jangan gunakan for loop.

Coba sendiri

extends Node

func _ready():
	var number := float(OS.read_string_from_stdin())
	# Bagi dua number selama nilainya 3.5 atau lebih, lalu cetak hasilnya
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