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:
codeKod, 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.
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:
codeKoş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) # 32Kendin dene
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
4Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Mantıksal Operatörler Bölüm 47Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıGirdi Alma8Döngüler
For DöngüsüWhile DöngüsüBreakContinueÖzet - FaktöriyelRange Fonksiyonuİç İçe DöngülerÖzet - Dinamik Girdi3Operatörler Bölüm 1
Aritmetik OperatörlerModulo OperatörüAritmetik KısayollarÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel Girdi/Çıktı
ÇıktıDeğişkenlerle ÇıktıGirdiTip DönüşümüÖzet - 120'ye KadarÖzet - Doğru veya Yanlış9Fonksiyonlar
Fonksiyon TanımlamaArgümanlarReturnÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Değerler