While Döngüsü:



Bir koşul sağlanmaya devam ettiği sürece işlemleri tekrarlar.

İngilizce bir kelime olan while, Türkçede ‘... iken, ... olduğu sürece’ gibi

anlamlarına gelir.

Ör:

while a == 1: # a, 1 olduğu sürece

Ör:

a = 1

while a < 10: # a 10’dan küçük olduğu sürece

print("Ali”) # ekrana “Ali” yazdır.

Açıklaması: Burada programımız diyor ki a, 10’dan küçük olduğu sürece ekrana “Ali” yazdır.

Ancak a=1 olduğu için a her zaman 10’dan küçük olacak. Bu da ekrana sürekli “Ali”

yazılmasına neden olacak. Buna sonsuz döngü diyoruz. (infinite loop) Buna son vermek için

klavyenizde Ctrl+C veya Ctrl+Z tuşlarına basarak programı durmaya zorlayabilirsiniz.

#Bu durumu düzeltmek için programı şu şekilde yazalım;

a = 1

while a < 10:

 a += 1

 print("Ali", end=” ”)

Çıktı: Ali Ali Ali Ali Ali Ali Ali Ali Ali

Açıklaması: Python öncelikle a = 1 satırını görüyor ve a‘nın değerini 1 yapıyor.

Daha sonra (while a < 10) satırını görüyor.

Ardından a‘nın değerini 1 artırıyor (a += 1) ve a‘nın değeri 2 oluyor.

a‘nın değeri (yani 2) 10‘dan küçük olduğu için Python ekrana ilgili çıktıyı veriyor.

İlk döngüyü bitiren Python başa dönüyor ve a‘nın değerinin 2 olduğunu görüyor.

a‘nın değerini yine 1 artırıyor ve a‘yı 3 yapıyor. a‘nın değeri hâlâ 10‘dan küçük olduğu için

ekrana yine ilgili çıktıyı veriyor. İkinci döngüyü de bitiren Python yine başa dönüyor ve a‘nın

değerinin 3 olduğunu görüyor. Yukarıdaki adımları tekrar eden Python, a‘nın değeri 9 olana

kadar dönmeye devam ediyor. a‘nın değeri 9‘a ulaştığında Python a‘nın değerini bir kez daha

artırınca bu değer 10‘a ulaşıyor. Python a‘nın değerinin artık 10‘dan küçük olmadığını

görüyor ve programı sona erdiriyor.

2

Ör:

a=1

while a<5: # a 5’ten küçük olduğu sürece

 print(a, end=” ”) # a’yı yazdır.

 a+=1 # a’yı 1 arttır.

Çıktı: 1 2 3 4

Açıklaması: İlk satırda a değişkene 1 atadık. İkinci satıra geldiğimizde ise değişkenin 5’ten

küçük olup olmama durumuna baktık, eğer küçükse kodumuz alt satıra geçecek ve böylece

değişken ekrana yazdırılacak. Son koda geldiğimizde a değişkeni 1 değer artıp 2 olacak ve

döngüye girecek. Sonra döngü devam edip ekrana 2 yazdırılacak. Bu durum a’nın 5’ten küçük

olmaması şartına kadar sağlanacak. Yani a artık 5 olduğunda yani while a<5: koşulu

sağlanmadığında döngü duracak ve ekrana sadece 1 2 3 4 yazdırılmış olacak

Ör: 1‘den 16‘ya kadar çift sayıları yazdırma:

a = 0

while a < 16:

 a += 1

 if a % 2 == 0:

 print(a, end=” “)

Çıktı: 2 4 6 8 10 12 14 16

Belirsiz Döngü: Bu döngüde döngünün kaç defa döneceği belirsizdir. Döngünün

kaç defa döneceğine şartlar ve kullanıcı karar verir.

n = 1

karar= int(input("sayılar kaça kadar sıralansın?" ))

while n <= karar:

 print(n)

 n += 1

sayılar kaça kadar sıralansın? 7

Çıktı: 1 2 3 4 5 6 7

Açıklama: Bu programda döngünün kaç defa döneceği belli değildir. Kullanıcının girdiği sayı 1

veya 1’den büyük olduğu sürece döngü tekrar edecektir. Örneğin kullanıcı 7 sayısını

girdiğinde 1’den 7’ye kadar olan sayılar ekrana yazdırılacaktır. Ancak kullanıcı 0 veya eksi

değerde bir sayı girdiğinde while n <= karar: şartı oluşmamış olacağından program tepki

vermeyecektir.

Yorumlar