Artık koşulları biliyorsunuz, sıra bir diğer tip döngüye bakmaya geldi: while döngüsü.
Bu tip döngü şimdiye kadar gördükleriniz içerisindeki en güçlü olanıdır. Fakat bu döngü koşulları anlamış olmanızı gerektirir. En temel kullanımı şu şekildedir:
while cond ... end
Burada cond son bölümde gördüğümüz bir koşuldur.
Burada basit bir örnek var:
Bu programa bir göz atalım:
Bu count değişken değeri 10 oluncaya kadar tekrar ettirilir. Böylece döngümüzün çıkışı şu şekilde olur:
Diğer bir değişle while döngüsü koşul doğru olduğu sürece döngüyü tekrar ettirir.ue. Bu sebepten dolayı ismi while'dır.
'n.defa'. yineleme ile çok zor olan bazı uygulamalar while döngüsü ile çok basit bir şekilde gerçeklenebilir.
1000'den küçük olan 2'nin en büyük kuvvetini bilmek istediğimizi düşünün. Bu while döngüsü ile çok kolay bir şekilde yapılabilir:
'n.defa'. yineleme ile ne kadar zor olduğunu düşünün.
Son programı tekrardan yazın, bu defa program en yüksek sayıyı sordun ve buna bağlı olarak da 2'nin kuvvetini hesaplasın.
Aşağıdaki programı çalıştırın ve girdi olarak 1e10 yazın. Ne olur?
EğerString#to_i yöntemini kullanırsanız, "1e10" 1 olarak dönüştürülür. irb 'yi açıp bunu deneyiniz.
1e10 sayısının ondalıksayı olduğunuz görürsünüz. Bu yüzden String#to_f yöntemini kullanmalısınız.