Tekil Mesaj gösterimi
Alt 20 Mayıs 2016, 23:19   #1
Çevrimdışı
Feragat

Feragat - ait Kullanıcı Resmi (Avatar)
While -> Continue


Reklam

While - Continue

Hazırlayan: Feragat
Tarih: 02 Mayıs 2015

mirc.chm 'de anlatımı


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
Multiple while loops can be embedded. You can use /break to break out of the current loop, and /continue to jump to the beginning of the loop. continue komutu, döngünün başına atlamaya yarar.

Örnek:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias deneme { var %x 1 while %x <= 10 { inc %x if (%x & 1) { continue } echo -a %x } }

/deneme aliasını kullandığımızda bize alttaki sonucu verecek.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
2 4 6 8 10

- Neden bu sonucu verdi ?

while döngüsünde %x değişkenine 1 değerini atadık ve %x <= 10 koşuluyla döngüyü başlattık.
%x 10 a eşit olana kadar döngümüz sürecek.
inc %x ile döngü her dönüşünde %x değişkeni birer birer yükselecek.
if koşulunda ise (%x & 1) belirttik. Bunun anlamı, $and(%x,1) tanımı 1 dönerse continue'yi kullan ve döngüyü başa atlat, alttaki satırları işleme. echo -a %x satırını okumadan başa atlayacak.

%x değişkeni inc %x sayesinde döngü her döndüğünde 1 artıyordu.
Döngünün ilk dönüşü: var %x 1 burada %x değişkenine 1 atadık.
if koşuluna gelene kadar inc %x ile %x değişkeni 2 oldu.
-
- if (%x & 1) = $and(%x,1) = //echo -a $and(2,1) = 0
-
Sonuç 0 olduğu için continue yi kullanmadı ve döngüyü en başa zıplatmadı. En alt satıra kadar okudu.

Döngü bir sonraki dönüşe geçti inc %x ile %x değişkeni 3 oldu.
-
- if (%x & 1) = $and(%x,1) = //echo -a $and(3,1) = 1
-
Sonuç 1 olduğu için continue'yi kullandı ve başa zıpladı. Yani 3 sayısını echo etmedi. Bu mantıkla sonuna kadar saydı ve bize sadece çift sayıları verdi. Çünkü çift sayılarda if koşulumuz uymadığı için(Sıfır döndüğü için) continue etmiyor ve döngü normal şekilde alt satırlara kadar çalışıyor.
-

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
2 = $and(2,1) = 0 - continue edilmedi 3 = $and(3,1) = 1 - continue edildi 4 = $and(4,1) = 0 - continue edilmedi 5 = $and(5,1) = 1 - continue edildi 6 = $and(6,1) = 0 - continue edilmedi 7 = $and(7,1) = 1 - continue edildi 8 = $and(8,1) = 0 - continue edilmedi 9 = $and(9,1) = 1 - continue edildi 10 = $and(10,1) = 0 - continue edilmedi

Not: $and tanımı ve if üzerindeki & koşulu bir örnekti. Dilediğiniz koşulları kullanabilirsiniz. Biraz farklı örnekler yaparak daha iyi kavrarsınız.
Ayrıca while - continue - break nerdeyse tüm programlama dillerinde ve betiklerde mevcut. Bu yüzden mantığı anlamak önemli.
While - Continue

Hazırlayan: Feragat
Tarih: 02 Mayıs 2015

mirc.chm 'de anlatımı


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
Multiple while loops can be embedded. You can use /break to break out of the current loop, and /continue to jump to the beginning of the loop. continue komutu, döngünün başına atlamaya yarar.

Örnek:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias deneme { var %x 1 while %x <= 10 { inc %x if (%x & 1) { continue } echo -a %x } }

/deneme aliasını kullandığımızda bize alttaki sonucu verecek.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
2 4 6 8 10

- Neden bu sonucu verdi ?

while döngüsünde %x değişkenine 1 değerini atadık ve %x <= 10 koşuluyla döngüyü başlattık.
%x 10 a eşit olana kadar döngümüz sürecek.
inc %x ile döngü her dönüşünde %x değişkeni birer birer yükselecek.
if koşulunda ise (%x & 1) belirttik. Bunun anlamı, $and(%x,1) tanımı 1 dönerse continue'yi kullan ve döngüyü başa atlat, alttaki satırları işleme. echo -a %x satırını okumadan başa atlayacak.

%x değişkeni inc %x sayesinde döngü her döndüğünde 1 artıyordu.
Döngünün ilk dönüşü: var %x 1 burada %x değişkenine 1 atadık.
if koşuluna gelene kadar inc %x ile %x değişkeni 2 oldu.
-
- if (%x & 1) = $and(%x,1) = //echo -a $and(2,1) = 0
-
Sonuç 0 olduğu için continue yi kullanmadı ve döngüyü en başa zıplatmadı. En alt satıra kadar okudu.

Döngü bir sonraki dönüşe geçti inc %x ile %x değişkeni 3 oldu.
-
- if (%x & 1) = $and(%x,1) = //echo -a $and(3,1) = 1
-
Sonuç 1 olduğu için continue'yi kullandı ve başa zıpladı. Yani 3 sayısını echo etmedi. Bu mantıkla sonuna kadar saydı ve bize sadece çift sayıları verdi. Çünkü çift sayılarda if koşulumuz uymadığı için(Sıfır döndüğü için) continue etmiyor ve döngü normal şekilde alt satırlara kadar çalışıyor.
-

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
2 = $and(2,1) = 0 - continue edilmedi 3 = $and(3,1) = 1 - continue edildi 4 = $and(4,1) = 0 - continue edilmedi 5 = $and(5,1) = 1 - continue edildi 6 = $and(6,1) = 0 - continue edilmedi 7 = $and(7,1) = 1 - continue edildi 8 = $and(8,1) = 0 - continue edilmedi 9 = $and(9,1) = 1 - continue edildi 10 = $and(10,1) = 0 - continue edilmedi

Not: $and tanımı ve if üzerindeki & koşulu bir örnekti. Dilediğiniz koşulları kullanabilirsiniz. Biraz farklı örnekler yaparak daha iyi kavrarsınız.
Ayrıca while - continue - break nerdeyse tüm programlama dillerinde ve betiklerde mevcut. Bu yüzden mantığı anlamak önemli.
__________________
These wounds won't seem to heal.
  Alıntı ile Cevapla

IRCForumu.Net - Reklam Alanı