Menu
Coddy logo textTech

While Döngüsü

Coddy'nin Python Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 36 / 77.

while döngüsü, for döngüsünden farklıdır. for döngüsü belirli bir range üzerinde yineleme yapmamızı sağlarken, while döngüsü belirli bir koşul karşılandığı sürece yineleme yapmaya devam etmemizi sağlar.

Bir while döngüsü kullanmak için şunu yazın:

while condition:
	code

Kod yalnızca koşul True ise çalıştırılır.

Koşul genellikle <= (küçük veya eşit), >= (büyük veya eşit), < (küçük), > (büyük) veya == (eşit) gibi karşılaştırma operatörleri kullanılarak oluşturulur. Döngü, bu karşılaştırma True olarak değerlendirildiği sürece çalışmaya devam eder ve False olur olmaz durur.

Döngü gövdesinin içinde genellikle kontrol edilen değişkeni güncellemeniz gerekir. Bu işlem, += (topla ve ata), -= (çıkar ve ata), *= (çarp ve ata) veya /= (böl ve ata) gibi artırılmış atama operatörleriyle yapılır. Örneğin, x *= 2, x = x * 2 ifadesinin kısa yazımıdır. Değişken güncellenmezse koşul hiç değişmez ve döngü sonsuza kadar çalışır.

for döngüsünün çözemeyeceği, ancak bir while döngüsünün sorunu çözeceği birçok kullanım durumu vardır.

Örneğin, şu problemi ele alalım:

Verilen bir sayıdan büyük olan en küçük 2 kuvvetini bulun.

Bunu çözmek için, mevcut 2 kuvvetini verilen sayıdan büyük olana kadar tekrar tekrar 2 ile çarpacak bir while döngüsü kullanacağız:

number = 27
power_of_two = 1

while power_of_two <= number:
    power_of_two *= 2

print(power_of_two)

Burada, power_of_two <= number bir karşılaştırma işleci kullanan koşuldur ve power_of_two *= 2, her yinelemede artırılmış atama işleci kullanarak değişkeni günceller. power_of_two, number değerini aştığında koşul False olur ve döngü durur.

challenge icon

Görev

Başlangıç

Bir girdi, float sayısı alan bir program yazın.

Sayı 3.5'ten büyük veya eşit olduğu sürece girdiyi 2'ye bölmek için bir while döngüsü kullanın.

3.5'ten küçük olan ilk sayıyı yazdırın.

Kendin dene

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 Python derleyicisi