IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Dersleri (https://www.ircforumlari.net/mirc-scripting-dersleri/)
-   -   while dongusunde sureklilik saglama (https://www.ircforumlari.net/mirc-scripting-dersleri/1014264-while-dongusunde-sureklilik-saglama.html)

manikdepresif 09 Temmuz 2023 09:37

while dongusunde sureklilik saglama
 
Herkese merhaba.
bu yontemi daha once kullandigimi hatirlamadigim icin sizlerle paylasmak istiyorum.
Daha onceki kodlarimda "birden fazla while dongusu ya da goto ile atlama" yaparak sonuca ulastim.
-
Asagida verecegim yontem, while kullanarak dongu bitisine sureklilik katarak yine ayni dongunun olusmasini kullanmayi amacliyor.
-
Nasil yani ?
normal bir while dongusu dusunelim 5 kez dönsün.
ne olabilir basit olarak? mesela 1'den 5'e kadar echo yapalim.
-

----------------------
Kod:

alias normal-dongu {
  var %m = 1
  while %m <= 5 {
    echo -a : %m
    inc %m
  }
  echo -a TAMAM
}

--------------------
Yukarida 8 satirlik line'dan olusan bir kod bulunmaktadir. Bu satirlara tek tek numara verirsek,
---------------------
1 alias normal-dongu {
2 var %m = 1
3 while %m <= 5 {
4 echo -a : %m
5 inc %m
6 }
7 echo -a TAMAM
8 }

---------------------
/normal-dongu komutunu uyguladigimizda, kodda hangi line numaralari sirasiyla calisacak ?
-
Lines: 1-2-3-4-5-3-4-5-3-4-5-3-4-5-3-4-5-6-7-8
dikkat ederseniz 3-4-5 numarali line'da bir tekrarlama goruyorsunuz ve bu tekrar 5 kez.
Tekrarlarin sonucunda bunun 1 dongu oldugunu anliyoruz.
-
Kodun ekran ciktisi ise;
-
: 1
: 2
: 3
: 4
: 5
TAMAM
-
Bu dongu normal bir while dogusudur.
Eger dongumuze sureklilik kazandirmak istiyorsak, yani donguyu surekli tekrar ettirmek istiyorsak;
Donguyu kac kez tekrar ettirelim ? mesela 2 kez olsun.

;----------------------------------
Kod:

alias surekli-dongu {
  var %m = 1
  var %surekli_dongu_kackez = 2
  while (%m <= 5 && %surekli_dongu_kackez) {
    echo -a : %m
    if %m == 5 { dec %m %m | dec %surekli_dongu_kackez }
    inc %m
  }
  echo -a TAMAM
}

----------------------------------
Yine kod line numaralar verelim.

1 alias surekli-dongu {
2 var %m = 1
3 var %surekli_dongu_kackez = 2
4 while (%m <= 5 && %surekli_dongu_kackez) {
5 echo -a : %m
6 if %m == 5 { dec %m %m | dec %surekli_dongu_kackez }
7 inc %m
8 }
9 echo -a TAMAM
10 }
-
/surekli-dongu komutunu uyguladigimizda, kodda hangi line numaralari sirasiyla calisacak ?
-
Calisan Lines: 1-2-3-4-5-7-4-5-7-4-5-7-4-5-7-4-5-7-4-5-6-7-4-5-7-4-5-7-4-5-7-4-5-7-4-5-7-8-9-10
-
Ekran Ciktisi;
-
: 1
: 2
: 3
: 4
: 5
: 1
: 2
: 3
: 4
: 5
TAMAM
-
Goruldugu gibi donguye bir ve operator yardimi ile ek bir variable(%surekli_dongu_kackez) koyarak,
o variable degerini azalttikca surekli dongunun'de ne zaman bitecegini ayarlayabiliyoruz.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 04:26.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk