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
Yorum Gönder