Menu
CoddyTech

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ıza olanak tanırken, while döngüsü belirli bir koşul karşılandığı sürece yinelemeye 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 işleçleri 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şkeni güncellemezseniz koşul hiçbir zaman 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 çözebileceğ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, artırılmış atama işleci kullanarak her yinelemede 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ı 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