Menu
Coddy logo textTech

While Döngüsü

Coddy'nin Python Journey'sinin Fundamentals bölümünün bir parçası — ders 36 / 77.

Bir while döngüsü, for döngüsünden farklıdır. Bir for döngüsü, belirli bir range üzerinde yineleme yapmamıza olanak tanır, oysa bir while döngüsü, belirli bir koşul sağ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ışacaktır.

koşul genellikle <= (küçük veya eşittir), >= (büyük veya eşittir), < (küçüktür), > (büyüktür) veya == (eşittir) gibi karşılaştırma operatörleri kullanılarak oluşturulur. Bu karşılaştırma True sonucunu verdiği sürece döngü çalışmaya devam eder ve False olduğu anda durur.

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

Bir while döngüsünün sorunu çözebileceği ancak for döngüsünün çözemeyeceğ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'nin kuvvetini bulun.

Bunu çözmek için, mevcut 2'nin kuvvetini, verilen sayıdan daha 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 karşılaştırma operatörü kullanan koşuldur ve power_of_two *= 2 bir birleşik atama operatörü 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 adet float sayı girdisi alan bir program yazın.

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

3.5 değerinden küçük olan ilk sayıyı yazdırın.

Kopya kağıdı

Bir while döngüsü, bir koşul True olduğu sürece çalışır:

while condition:
    code

Koşulu oluşturmak için karşılaştırma operatörlerini kullanın: ==, <, >, <=, >=.
Her yinelemede değişkeni güncellemek için artırılmış atama operatörlerini kullanın: +=, -=, *=, /=.

number = 27
power_of_two = 1

while power_of_two <= number:
    power_of_two *= 2  # sonsuz döngüden kaçınmak için değişkeni güncelle

print(power_of_two)  # 32

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.

Fundamentals bölümündeki tüm dersler