Menu
CoddyTech

İç İçe Döngü

Coddy'nin GDScript Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 49 / 92.

İç içe döngü, başka bir döngünün içinde bulunan bir döngüdür. Dış döngünün her yinelemesinde iç döngü tüm yinelemelerini çalıştırır:

var rows := 3
var cols := 2
for i in range(rows):
	print("Outer: ", i)
	for j in range(cols):
		print("  Inner: ", j)
Outer: 0
  Inner: 0
  Inner: 1
Outer: 1
  Inner: 0
  Inner: 1
Outer: 2
  Inner: 0
  Inner: 1

İç blok iki düzey girintilidir. Toplamda rows x cols = 3 x 2 = 6 kez çalışır. Dış döngü her çalıştığında j yeniden 0'dan başlar; rows ve cols ise aynı kalır ve döngülere yalnızca ne zaman durmaları gerektiğini söyler.

İki döngünün farklı değişken adlarına ihtiyacı vardır. Başka bir for i döngüsünün içine for i yazmak hatadır ve program çalışmadan önce bildirilir.

İç içe döngüler satırlar ve sütunlar için kullanışlıdır. print() satırı her zaman sonlandırır; bu yüzden bir yıldız satırı yazdırmak için önce onu bir dizede oluşturun ve iç döngü tamamlandığında bir kez yazdırın:

for row in range(2):
	var line := ""
	for col in range(3):
		line += "*"
	print(line)
***
***

Dış döngü her satır için bir kez çalışır ve iç döngü her sütun için bir yıldız ekler. İç döngünün içindeki break yalnızca iç döngüyü durdurur: dış döngü bir sonraki yinelemesine devam eder.

challenge icon

Görev

Kolay

Program iki tam sayı okur: rows ve cols.

rows satırdan ve her satırda cols yıldızdan oluşan bir dikdörtgen yazdırmak için iç içe döngüler kullanın (*).

3 ve 4 girdileri için çıktı şöyledir:

****
****
****

Her döngü için yeni bir sayaç kullanın (örneğin, satırlar için row ve bir satırdaki yıldızlar için col) ve bu sayacı rows veya cols ile karşılaştırın. rows ve cols değerlerini değiştirmeyin: her satırda cols sayısına yeniden ihtiyaç vardır.

Kendin dene

extends Node

func _ready():
	var rows := int(OS.read_string_from_stdin())
	var cols := int(OS.read_string_from_stdin())
	# Dış döngü: her satır için bir yineleme
	# İç döngü: her sütun için bir yıldız ekle
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temel Bilgiler bölümündeki tüm dersler

Kendi başına pratik yap: Online GDScript derleyicisi