![]() |
Temelden mIRC Scripting dersleri bölüm 3 - Döngüler ve Koşullu İfadeler Konu: Döngüler ve Koşullu İfadeler Anlatım: Emirhan Tarih: 11 Kasım 2024 Merhaba sevgili IRCrehberi üyeleri, Bu dersimizde mIRC scripting'de döngüler ve koşullu ifadeler konularını detaylı bir şekilde inceleyeceğiz. Bu yapılar, script'lerinizde kontrol akışını yönetmenizi ve daha karmaşık işlemleri gerçekleştirmenizi sağlar. Koşullu İfadeler (If Statements) Koşullu ifadeler, belirli bir koşulun doğru veya yanlış olmasına göre farklı işlemler yapmamızı sağlar. Temel Yapı: Kod: if (koşul) { işlemler } else { alternatif işlemler }Kod: alias yas_kontrol { var %yas = $1 if (%yas >= 18) { echo Ehliyet alabilirsiniz. } else { echo Ehliyet almak için yeterli yaşta değilsiniz. } }Kod: /yas_kontrol 20Karşılaştırma Operatörleri: == : Eşittir != : Eşit değil > : Büyüktür < : Küçüktür >= : Büyük veya eşit <= : Küçük veya eşit Mantıksal Operatörler: && : Ve (AND) || : Veya (OR) ! : Değil (NOT) Örnek: Kullanıcının İki Değerini Kontrol Etme Kod: alias deger_kontrol { var %sayi1 = $1 var %sayi2 = $2 if ((%sayi1 > 0) && (%sayi2 > 0)) { echo Her iki sayı da pozitiftir. } else { echo En az bir sayı pozitif değil. } }Kod: /deger_kontrol 5 -3Döngüler (Loops) Döngüler, belirli bir işlemi birden fazla kez tekrarlamamızı sağlar. Türleri: While Döngüsü For Döngüsü Sınırlı Döngüler 1. While Döngüsü Koşul doğru olduğu sürece döngü devam eder. Temel Yapı: Kod: var %i = başlangıç_değeri while (%i <= bitiş_değeri) { işlemler inc %i }Kod: alias sayilar { var %i = 1 while (%i <= 5) { echo Sayı: %i inc %i } }Kod: /sayilarPHP- Kodu: mIRC scripting'de doğrudan bir "for" döngüsü bulunmamasına rağmen, "while" döngüsü ile benzer işlevi elde edebiliriz. Örnek: Kod: alias for_dongusu { var %i = 1 while (%i <= 5) { echo For döngüsü: %i inc %i } }Belirli bir liste üzerinde dolaşmak için kullanılır. Örnek: Kanal Kullanıcılarını Listeleme Kod: alias kanal_kullanicilari { var %i = 1 var %toplam = $nick($active,0) while (%i <= %toplam) { echo Kullanıcı %i: $nick($active,%i) inc %i } }$nick($active,%i): Aktif kanaldaki %i'nci kullanıcının ismini verir. Kullanım: Kod: /kanal_kullanicilariKullanıcının girdiği iki sayı üzerinde toplama, çıkarma, çarpma ve bölme işlemleri yapalım. Alias Tanımlama: Kod: alias hesap_makinesi { var %sayi1 = $1 var %islem = $2 var %sayi2 = $3 if (%islem == +) { var %sonuc = $calc(%sayi1 + %sayi2) } elseif (%islem == -) { var %sonuc = $calc(%sayi1 - %sayi2) } elseif (%islem == *) { var %sonuc = $calc(%sayi1 * %sayi2) } elseif (%islem == /) { if (%sayi2 != 0) { var %sonuc = $calc(%sayi1 / %sayi2) } else { echo Bölme işleminde bölen 0 olamaz! halt } } else { echo Geçersiz işlem! Lütfen +, -, *, / kullanın. halt } echo Sonuç: %sonuc }Kod: /hesap_makinesi 10 + 5Koşullu İfadelerde Metin Karşılaştırma Metinleri karşılaştırırken eşitlik ve joker karakterler kullanabilirsiniz. Örnek: Kullanıcının İsmini Kontrol Etme Kod: alias isim_kontrol { var %isim = $1 if (%isim == Emirhan) { echo Hoş geldin, Emirhan! } else { echo Merhaba, %isim } }Kod: /isim_kontrol EmirhanJoker Karakter Kullanımı $istok() fonksiyonu ile metin içinde belirli bir kelimenin olup olmadığını kontrol edebilirsiniz. Örnek: Kod: alias mesaj_kontrol { var %mesaj = $1- if ($istok(%mesaj, merhaba, 32)) { echo Kullanıcı merhaba dedi. } else { echo Kullanıcı farklı bir şey dedi. } }32: Boşluk karakterini ayırıcı olarak kullanır. Kullanım: Kod: /mesaj_kontrol merhaba nasılsınGelişmiş Döngü ve Koşul Kullanımı Örnek: Asal Sayıları Bulma 1'den 20'ye kadar olan sayılar içinde asal olanları bulalım. Kod: alias asal_sayilar { var %sayi = 2 while (%sayi <= 20) { var %bolen = 2 var %asal = $true while (%bolen < %sayi) { if ($calc(%sayi % %bolen) == 0) { var %asal = $false break } inc %bolen } if (%asal == $true) { echo %sayi bir asal sayıdır. } inc %sayi } }Kod: /asal_sayilarUygulama: Basit Bir Chat Botu Kullanıcıların mesajlarına otomatik yanıt veren bir bot oluşturalım. Event Tanımlama: Kod: on :TEXT::#:{ if ($1 == !merhaba) { msg $chan Merhaba $nick, hoş geldin! } elseif ($1 == !saat) { msg $chan Şu an saat: $time(HH:nn) } else { msg $chan $nick, komutunuzu anlayamadım. } }on :TEXT::#: {...}: Herhangi bir kullanıcı, herhangi bir kanalda bir mesaj gönderdiğinde tetiklenir. $1: Kullanıcının mesajının ilk kelimesi. $nick: Mesajı gönderen kullanıcının ismi. $chan: Mesajın gönderildiği kanal. $time(HH:nn): Geçerli saati saat:dakika formatında verir. Kullanım: Kullanıcı kanalda !merhaba yazarsa, bot "Merhaba [kullanıcı adı], hoş geldin!" mesajını gönderir. Kullanıcı kanalda !saat yazarsa, bot geçerli saati bildirir. Farklı bir mesaj yazıldığında bot, komutu anlayamadığını belirtir. Ders bitimi; Bu dersimizde mIRC scripting'de döngüler ve koşullu ifadelerin nasıl kullanıldığını öğrendik. Kendi örneklerinizi oluşturarak pratik yapmanızı öneririm. İyi forumlar IRCrehberi.NET Saygılar. |
| Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 03:44. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Copyright ©2019 - 2025 | IRCRehberi.Net