|
Paint Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir. |
Döküman sahibi: Paint
Konu: Koşul ifadeleri ve Operatörler
Tarih: 19.05.2012
Helpethos.net Dökümanıdır.
Merhabalar,
If komutu değerleri karşılaştırmamızı ve bu değerler sonucunda işlem yapma olanağı sağlar.
IF anlam olarak eğer, else ise değilse olarak çevrilebilir.
En basitten başlayalım: Kod: Kodu kopyalamak için üzerine çift tıklayın! if (v1 operator v2) { komutlar1 }
elseif (v1 operator v2) { komutlar2 }
else { komutlar3 } Yukarıda yapmak istediğimiz olay: Satır 1: Eğer satır 1 deki koşul doğru ise komutlar 1'i uygula. Satır 2: Eğer ilk satırdaki koşul doğru değilse ve ikinci satırdaki koşul doğru ise komutlar 2'yi uygula. Satır 3: Eğer hiç bir komut doğru değilse komutlar3'ü uygula... Not: Parantezler olmadanda kod çalışır fakat farkedilemeyecek kadar olsada yavaş olur, ayriyeten parantezler kodunuzu okuyan birisinin anlamasını kolaylaştırır. Not2: İç içe istediğiniz kadar IF-ElseIF-ELSE kullanabilirsiniz.
Peki şimdi "if (v1 operator v2) { komutlar1 }" buradaki operator ne anlama geliyormuş ve operatorler nelermiş buna bakalım. Operators IF-ElseIF-ELSE komutlarını basit olsada anlattık daha iyi anlamak için örnekler yapmanız gerek.
Operatorler IF ve ELSEIF komutlarında kullanılır, operatörler bir çok koşulu sorgularken gereklidir. -- == : Eşitse
//if Paint == paint { echo -a Değer1: $v1 Değer2: $v2 eşit. } (Sonuç: Değer1: Paint Değer2: paint eşit.)
//if Paint == AmiR { echo -a Değer1: $v1 Değer2: $v2 eşit. } (Sonuç: Paint AmiR e eşit olmadığı için hiç birşey dönmez.) === : Eşitse ( Büyük-Küçük harf duyarlı | Case sensitive )
//if Paint === Paint { echo -a Değer1: $v1 Değer2: $v2 eşit. } (Sonuç: Değer1: Paint Değer2: Paint eşit.)
//if Paint == paint { echo -a Değer1: $v1 Değer2: $v2 eşit. } (Sonuç: v2 deki paint yazısının ilk harfi küçük olduğu için hiç birşey dönmez.) != : Eşit değilse
//if Paint != Kaint { echo -a Değer1: $v1 Değer2: $v2 eşit. } (Sonuç: Değer1: Paint Değer2: Kaint eşit değil.)
//if Paint === Paint { echo -a Değer1: $v1 Değer2: $v2 eşit. } (Sonuç: v1 ve v2 eşit olduğu için birşey dönmez.) < : Küçükse
//if 1 < 2 { echo -a Evet küçük. } (Sonuç: Evet küçük.)
//if 3 < 2 { echo -a Evet küçük. } (Sonuç: 3 sayısı 2 den büyük olduğu için birşey olmaz.) > : Büyükse
//if 3 < 2 { echo -a Evet büyük. } (Sonuç: Evet büyük.)
//if 1 < 2 { echo -a Evet küçük. } (Sonuç: 1 sayısı 2 den büyük olmadığı için sonuç gelmez.) >= : Büyük veya eşitse
//if 3 >= 2 { echo -a Evet büyük. } (Sonuç: Evet büyük.) <= : Küçük veya eşitse
//if 1 <= 2 { echo -a Evet küçük. } (Sonuç: Evet küçük.) // :v2 değeri v1 e eşitse veya katıysa.
Sonuç dönenler:
//if 2 // 2 { echo -a v2: $v2 değeri v1: $v1 değerine eşit veya katı. }
//if 2 // 4 { echo -a v2: $v2 değeri v1: $v1 değerine eşit veya katı. }
Sonuç dönmeyenler:
//if 3 // 4 { echo -a v2: $v2 değeri v1: $v1 değerine eşit veya katı. } \\ :v2 değeri v1 e eşit veya katı değilse.
Sonuç dönenler:
//if 3 // 4 { echo -a v2: $v2 değeri v1: $v1 değerine eşit veya katı değil. }
Sonuç dönmeyenler:
//if 2 // 2 { echo -a v2: $v2 değeri v1: $v1 değerine eşit veya katı. } & : Bit seviyesinde karşılaştırma
Bunu açıklaması oldukça uzun ayrı bir ders gerekir o yüzden hiç girmiyorum. --- isin : v1 değeri v2'nin içinde geçiyorsa.
Cevabı $true dönenler:
//if paint isin paintci { echo -a $true }
//if Reply isin Reply { echo -a $true }
Cevap dönmeyenler:
//if HelpEthos isin Ethos { echo -a $false } isincs : v1 değeri v2'nin içinde geçiyorsa. (case sensitive)
Cevabı $true dönenler:
//if Reply isin Reply { echo -a $true }
Cevap dönmeyenler:
//if Reply isin reply { echo -a $false } iswm : v1 değerini v2'nin içinde sorgulama. (Wildcard destekli.)
Cevabı $true dönenler:
//if repl* iswm reply { echo -a $true }
//if *epl* iswm reply { echo -a $true }
//if *e?l* iswm reply { echo -a $true }
Cevap dönmeyenler:
//if replu* iswm reply { echo -a $false } iswmcs : v1 değerini v2'nin içinde sorgulama. (Wildcard destekli.) (case sensitive)
Cevabı $true dönenler:
//if Repl* iswmcs Reply { echo -a $true }
Cevap dönmeyenler:
//if Repl* iswmcs reply { echo -a $false } isnum : v1 eğer sayı ise. Bu operatorde v2 zorunlu değildir v2 yazarsanız operatorun anlamı v1 sayısı v2 aralığında ise burda v2 yi sayı1-sayı2 şeklinde yazmalısınız.
Cevabı $true dönenler:
//if 1 isnum { echo -a $true }
//if 5 isnum 4-6 { echo -a $true }
//if 51 isnum 5- { echo -a $true }
Cevap dönmeyenler:
//if a isnum { echo -a $false }
//if 5 isnum 1-3 { echo -a $false } isletter : isnum operatorünün sayı yerine harf şekli.
Cevabı $true dönenler:
//if A isletter { echo -a $true }
//if c isletter ac { echo -a $true }
Cevap dönmeyenler:
//if 11 isletter { echo -a $false }
//if c isletter db { echo -a $false } isalnum : Metin sadece harf ve rakamlar içeriyorsa.
Cevabı $true dönenler:
//if Metin43 isalnum { echo -a $true }
//if metinci isalnum { echo -a $true }
Cevap dönmeyenler:
//if metin½ isalnum { echo -a $false } isalpha : Metin sadece harf içeriyorsa.
Cevabı $true dönenler:
//if metin isalpha { echo -a $true }
Cevap dönmeyenler:
//if metin58 isalpha { echo -a $false } islower : Metin sadece küçük harfler içeriyorsa.
Cevabı $true dönenler:
//if metinci islower { echo -a $true }
Cevap dönmeyenler:
//if Metinci islower { echo -a $false } isupper : Metin sadece büyük harfler içeriyorsa.
Cevabı $true dönenler:
//if PAINT isupper { echo -a $true }
Cevap dönmeyenler:
//if Paint isupper { echo -a $false } ---- ison : v1 deki Nick v2 de yazan kanalda bulunuyorsa.
Kullanım: //if v1 ison v2 { komutlar } isop : v1 deki Nick v2 de yazan kanalda opsa.
Kullanım: //if v1 isop v2 { komutlar } ishop : v1 deki Nick v2 de yazan kanalda halfopsa.
Kullanım: //if v1 ishop v2 { komutlar } isvoice : v1 deki Nick v2 de yazan kanalda voice sahibiyse.
Kullanım: //if v1 isvoice v2 { komutlar } isreg : v1 deki Nick v2 de yazan kanalda yetki sahibi değilse yani voicesi bile yoksa
Kullanım: //if v1 isreg v2 { komutlar } ischan : v1 bulunduğunuz bir kanal ise
Kullanım: //if v1 ischan { komutlar } isban : v1 deki mask v2 de yazan kanalda ban listesinde varsa
Kullanım: //if v1 isban v2 { komutlar }
----- isaop : v1 de yazan nick v2 kanalı için auto-op listesinde ise ( v2 opsiyonel )
Kullanım: //if v1 isaop v2 { komutlar } isavoice : v1 de yazan nick v2 kanalı için auto-voice listesinde ise ( v2 opsiyonel )
Kullanım: //if v1 isavoice v2 { komutlar } isignore : v1 de yazan mask ignore listesinde v2 de yazan parametre ile eklenmişse. ( v2 opsiyonel )
//if v1 isigonre v2 { komutlar } isprotect : v1 de yazan nick v2 kanalı için protect listesinde ise ( v2 opsiyonel
Kullanım: //if v1 isaprotect v2 { komutlar } isnotify : v1 de yazan nick notify listenizde varsa
//if v1 isnotify { komutlar } Önemli NOT: Bir operatörü olumsuz biçime çevirmek için operatörün başına ! ekleyin. Örnek: !isop, !ishop, !isin, !isignore
- Not: //if DENEME == HELPETHOS { ECHO -a $FALSE }
Burada $v1 DENEME $v2 HELPETHOS olarak dönecektir.
- ÖNEMLİ:
Tek if komutuyla birden fazla sorgulamayı aynı anda yapmak için || veya && kullanabilirsiniz. || anlam olarak veya olarak çevrilebilir. && ise ve olarak çevrilebilir.
Kullanımları:
//if v1 isin v2 && v3 isop v4 { echo -a $true } Anlamı: v1 yazısı v2'nin içinde geçiyorsa ve v3 nicki v4 kanalında opsa ekrana $true yaz.
//if v1 isin v2 || v3 isop v4 { echo -a $true } Anlamı: v1 yazısı v2'nin içinde geçiyorsa veya v3 nicki v4 kanalında opsa ekrana $true yaz. $IIF
$iif identifieri daha hızlı koşul sorgulamamızı sağlar. Kullanımı:
$iif(koşul,doğru ise komutlar, yanlış ise komutlar) Örnek: Kod: Kodu kopyalamak için üzerine çift tıklayın! ;Birisi !iif yazarsa
on *:text:!iif:*:{
;Eğer $chan identifierı bir şey döndürüyorsa %gönderim variablesini dönen yazı yap döndermiyorsa $nick ten dönen yazı yap
set %gönderim $iif($chan,$chan,$nick)
;Eğer kanaldan gelmişse mesaj kanala IIF yaz özelden geldiyse gönderen kişinin özeline yaz.
msg %gönderim IIF
} Benden bu kadar gerisi sizin yaptığınız pratiklere bağlı. Okuduğunuz için teşekkürler. Kodlamaktan ve sorgulamaktan korkmayın... |
< : Küçükse
//if 1 < 2 { echo -a Evet küçük. } (Sonuç: Evet küçük.)
//if 3 < 2 { echo -a Evet küçük. } (Sonuç: 3 sayısı 2 den büyük olduğu için birşey olmaz.)
> : Büyükse
//if 3 < 2 { echo -a Evet büyük. } (Sonuç: Evet büyük.)
//if 1 < 2 { echo -a Evet küçük. } (Sonuç: 1 sayısı 2 den büyük olmadığı için sonuç gelmez.)
bu bolumde buyukse yazan yer yanlısmı yazılmıs benmı anlayamadım acaba.