IRCRehberi.Net- Türkiyenin En iyi IRC ve Genel Forum Sitesi  
 sohbet
derya sohbet


mIRC Scripting Hazır Kodlar mIRC Scriptinglerinizde kullanabileceğiniz hazır kodlara bu başlık altından ulaşabilirsiniz.

5Beğeni(ler)
  • 1 Post By Feragat
  • 1 Post By Artist
  • 1 Post By Murat
  • 1 Post By ZeyNa
  • 1 Post By She


 
 
Seçenekler Stil
Alt 27 Mart 2022, 21:25   #1
Özel Üye
Feragat - ait Kullanıcı Resmi (Avatar)

Unhappy mIRC Fonksiyonel Hesap Makinesi

* mIRC Fonksiyonel Hesap Makinesi
* Hazırlayan : Feragat
* Oluşum : 12.12.2013
* Güncelleme: 06.01.2014

İlk versiyonundan farklı olarak işlemlerin rahat görülebilmesi için bir pencere oluşturuldu.

Bazı Kullanım ipuçları:

- x^y isimli tuşa basıldığında x üzeri y hesabı yapar, gibi bir sembolü olmadığı için bu şekilde yapmak zorunda kaldım. Bu hesaplama yapılırken öncelikle; üssü hesaplanacak taban sayı yazılır x, sonrasında x^y tuşuna basılır daha sonra üs sayısı yazılır y. Örnek: 5^3

- pi hesaplarken (örneğin 2 x pi); 2pi şeklinde yazıp = eşittir e basın. pi2 veya 2xpi gibi girişlerde işlem yapmayacaktır. Ayrıca (sin|cos|tan|sec) miktar pi işlemi de yapmaktadır. Örnek: sin2pi

- nPr(Permütasyon) ve nCr(Kombinasyon) hesaplarken kullanılacak format; Öncelikle nPr veya nCr tuşu sonrasında x yani 1. sayı, sonra vürgül ve y yani 2. sayı şeklinde olmalıdır. Örnek: nPr20,10

- Faktöriyel(!) Hesaplamasında öncelikle Faktöriyel (!) simgesine basıp sonra sayı yazılmalıdır. Örnek: !5

Not 1:
Virgül(,) karakterinin; nPr(Permütasyon) ve nCr(Kombinasyon) işlemleri harici bir fonksiyonu bulunmamaktadır. Dört işlem vb. hesaplamalarda Nokta(.) karakterini kullanın.

Not 2: Kullanmak isteyen kişilerin kodu sağlıklı çalışabilmesi için boş bir remote sayfasına eklemesini öneririm. mIRC'in herhangi bir ekranında sağ tık yapıp Hesap sekmesinden açabilirsiniz.

Örnek Görüntüler:

1- [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

2- [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Kod

;#####################################
;# - mIRC Fonksiyonel Hesap Makinesi #
;# - Hazırlayan : Feragat            #
;# - Oluşum : 12.12.2013             #
;# - Güncelleme: 06.01.2014          #
;#####################################

menu * { 
  .Hesap:/dialog -m hesap hesap 
}

dialog hesap {
  title "Fonksiyonel Hesap Makinesi"
  size -1 -1 222 163
  option dbu
  edit "", 1, 10 56 201 10, multi autohs
  button "sin", 2, 10 73 21 12, flat
  button "asin", 3, 34 73 21 12, flat
  button "cot", 4, 58 73 21 12, flat
  button "cos", 5, 10 88 21 12, flat
  button "acos", 6, 34 88 21 12, flat
  button "sec", 7, 58 88 21 12, flat
  button "tan", 8, 10 102 21 12, flat
  button "atan", 9, 34 102 21 12, flat
  button "csc", 10, 58 102 21 12, flat
  button "7", 11, 115 73 17 12, flat
  button "8", 12, 135 73 17 12, flat
  button "4", 14, 115 88 17 12, flat
  button "5", 15, 135 88 17 12, flat
  button "6", 16, 155 88 17 12, flat
  button "1", 17, 115 103 17 12, flat
  button "2", 18, 135 103 17 12, flat
  button "3", 19, 155 103 17 12, flat
  button "<=", 20, 194 73 17 12, flat
  button "C", 21, 194 88 17 12, flat
  button "=", 22, 194 103 17 26, flat
  button "0", 23, 115 117 17 12, flat
  button ".", 25, 155 117 17 12, flat
  button "nCr", 26, 10 116 21 12, flat
  button "nPr", 27, 34 116 21 12, flat
  button "!", 28, 58 116 21 12, flat
  button "9", 13, 155 73 17 12, flat
  button "x", 29, 175 73 17 12, flat
  button "÷", 30, 175 88 17 12, flat
  button "-", 31, 175 103 17 12, flat
  button "+", 32, 175 117 17 12, flat
  button "pi", 38, 81 73 21 12, flat
  button "x^y", 39, 81 88 21 12, flat
  button "x³", 40, 81 116 21 12, flat
  button "x²", 41, 81 102 21 12, flat
  radio "Degree - (360°)", 42, 9 145 49 10
  radio "Radian - (2pi)", 43, 64 145 44 10
  button ",", 24, 135 117 17 12, flat
  button "Kök(sqrt)", 34, 10 130 45 12, flat
  box "", 35, 10 4 201 47
}

;ALIAS'lar

;Aktif pencere oluşum
alias -l drw { 
  if !$isid && $regex($1,/^on\z/S) { 
    window -c @Hesap
    window -phdk0o +d @Hesap $calc($dialog(hesap).x + 30) $calc($dialog(hesap).y + 48) 388 70
    .timerb -ho 0 100 drw ref 
  }
  if !$isid && $regex($1,/^ref\z/S) { 
    window $iif($dialog(hesap).active,-o,-u) @Hesap $calc($dialog(hesap).x + 30) $calc($dialog(hesap).y + 48) 388 70
  }
}

;Aktif pencere kısayol
alias -l chesap { 
  clear @Hesap 
  drawtext -rbo @Hesap $rgb(255,255,255) $rgb(255,0,0) Verdana 15 8 13 $1- 
}
alias -l dhesap drawtext -rbo @Hesap $rgb(0,255,255) $rgb(0,0,0) Verdana 12 8 42 $1- 
alias -l shesap drawtext -rbo @Hesap $rgb(0,255,255) $rgb(0,0,0) Verdana 15 70 13 $1- 

;Kotanjant
alias cot { 
  if ($isid && $prop == deg) { 
    return $calc(1 / $tan($1).deg) 
  }
  elseif ($isid && !$prop) { 
    return $calc(1 / $tan($1)) 
  }
}

;Sekant
alias sec { 
  if ($isid && $prop == deg) { 
    return $calc(1 / $cos($1).deg) 
  }
  elseif ($isid && !$prop) { 
    return $calc(1 / $cos($1)) 
  }
}

;Kosekant
alias csc { 
  if ($isid && $prop == deg) { 
    return $calc(1 / $sin($1).deg) 
  }
  elseif ($isid && !$prop) { 
    return $calc(1 / $sin($1)) 
  }
}

;Faktöriyel 
alias fac return $calc($regsubex($regsubex($str(*,$1),/./g,\n),/(?<=\d(?=\d))/g,*))

;Permütasyon
alias per $iif($isid,return,echo -a) $calc($fac($$1) / $fac($calc($$1 - $$2))) 


;Kombinasyon
alias cmb $iif($isid, return, echo -a) $calc($fac($$1) / $calc($fac($calc($$1 - $$2)) * $fac($$2)))  

;x sayısının y üssü 
alias üs $iif($isid,return,echo -a) $calc($$1 ^ $$2) 


;x sayısının küpü
alias x3 $iif($isid,return,echo -a) $calc($$1 ^ 3) 


;x sayısının karesi
alias x2 $iif($isid,return,echo -a) $calc($$1 ^ 2) 



;EVENT

on *:dialog:hesap:*:*: {
  if ($devent = init) {
    did -c $dname 42  
    drw on
  }
  if ($devent = close) {
    window -c @Hesap 
    .timerb off 
  }
  if ($devent = sclick) {
    if ($did = 20) {
      if $did(1).text { 
        did -ra $dname 1 $left($did(1).text,-1) 
      }
    }
    if ($did isnum 11-19) ||  ($did = 23) {
      did -a $dname 1 $did($did).text
    } 
    if ($did = 21) { 
      did -r $dname 1 
      clear @Hesap
    }
    if ($did = 25) {
      did -a $dname 1 .
    }
    if ($did = 24) {
      did -a $dname 1 ,
    }
    if ($did = 30) {
      did -a $dname 1 /
    }
    if ($did = 31) {
      did -a $dname 1 - 
    }
    if ($did = 32) {
      did -a $dname 1 +
    }
    if ($did = 29) {
      did -a $dname 1 x
    }
    if ($did = 38) {
      did -a $dname 1 pi
    }
    if ($did = 41) {
      $iif(!$did(1).text,did -a $dname 1 x2^)
    }
    if ($did = 40) { 
      $iif(!$did(1).text,did -a $dname 1 x3^)
    }
    if ($did = 39) {
      $iif($$did(1).text,did -a $dname 1 ^)
    }
    if ($did = 26) {
      $iif(!$did(1).text,did -a $dname 1 nCr)
    }
    if ($did = 27) { 
      $iif(!$did(1).text,did -a $dname 1 nPr)
    }
    if ($did = 28) {
      $iif(!$did(1).text,did -a $dname 1 !)
    }
    if ($did = 34) {
      $iif(!$did(1).text,did -a $dname 1 sqrt)
    }
    if ($did = 2) {
      $iif(!$did(1).text, did -a $dname 1 sin, did -ra $dname 1 sin $+ $did(1).text)
    }
    if ($did = 3) {
      $iif(!$did(1).text, did -a $dname 1 asin, did -ra $dname 1 asin $+ $did(1).text)
    }
    if ($did = 6) {
      $iif(!$did(1).text, did -a $dname 1 acos, did -ra $dname 1 acos $+ $did(1).text)
    }
    if ($did = 9) {
      $iif(!$did(1).text, did -a $dname 1 atan, did -ra $dname 1 atan $+ $did(1).text)
    }
    if ($did = 5) {
      $iif(!$did(1).text, did -a $dname 1 cos, did -ra $dname 1 cos $+ $did(1).text)
    }
    if ($did = 8) {
      $iif(!$did(1).text, did -a $dname 1 tan, did -ra $dname 1 tan $+ $did(1).text)
    }
    if ($did = 4) {
      $iif(!$did(1).text, did -a $dname 1 cot, did -ra $dname 1 cot $+ $did(1).text)
    }
    if ($did = 7) {
      $iif(!$did(1).text, did -a $dname 1 sec, did -ra $dname 1 sec $+ $did(1).text)
    }
    if ($did = 10) {
      $iif(!$did(1).text, did -a $dname 1 csc, did -ra $dname 1 csc $+ $did(1).text)
    }
    if ($did = 22) {
      if $did(42).state == 1 && $regex(h,$did(1).text,/^([a-z]{3})([-]\d+|[-]\d+\.\d+|\d+|\d+\.\d+|\d+pi|pi)$/) { 
        if $regex(k,$regml(h,2),/(\d+pi)/) { 
          var %ns = $+($gettok($regml(k,1),1,112),$chr(32),$chr(42),$chr(32),$chr(36),$chr(112),$gettok($regml(k,1),2,112)) 
          var %ns1 = [ [ %ns ] ] | did -ra $dname 1 [ [ $+($chr(36),$regml(h,1),$chr(40),%ns1,$chr(41),.deg) ] ] 
          chesap $+($regml(h,1),$chr(40),$regml(h,2),$chr(41),:)
          dhesap $+($gettok($regml(k,1),1,112),$chr(32),$chr(42),$chr(32),$chr(112),$gettok($regml(k,1),2,112)) $chr(61) [ [ $+($chr(36),$regml(h,1),$chr(40),%ns1,$chr(41),.deg) ] ]
        }
        elseif $regex(k,$regml(h,2),/(pi)/) { 
          var %ns = $pi 
          did -ra $dname 1 [ [ $+($chr(36),$regml(h,1),$chr(40),%ns,$chr(41),.deg) ] ] 
          chesap Pi: 
          dhesap $+($regml(h,1),$chr(40),%ns,$chr(41)) $chr(61) [ [ $+($chr(36),$regml(h,1),$chr(40),%ns,$chr(41),.deg) ] ] 
        }
        else { 
          var %h = $+($chr(36),$regml(h,1),$chr(40),$regml(h,2),$chr(41),.deg) 
          did -ra $dname 1 [ [ %h ] ] 
          chesap $replace($regml(h,1),sin,Sinüs,cos,Kosinüs,tan,Tanjant,cot,Kotanjant,sec,Sekant,cos,Kosekant) $+ :
        dhesap $+($regml(h,1),$chr(40),$regml(h,2),$chr(41)) $chr(61) [ [ %h ] ] }
      }
      elseif $did(43).state == 1 && $regex(h,$did(1).text,/^([a-z]{3})([-]\d+|[-]\d+\.\d+|\d+|\d+\.\d+|\d+pi|pi)$/) { 
        if $regex(k,$regml(h,2),/(\d+pi)/) { 
          var %ns = $+($gettok($regml(k,1),1,112),$chr(32),$chr(42),$chr(32),$chr(36),$chr(112),$gettok($regml(k,1),2,112)) 
          var %ns1 = [ [ %ns ] ] 
          did -ra $dname 1 [ [ $+($chr(36),$regml(h,1),$chr(40),%ns1,$chr(41)) ] ] 
          chesap Pi: 
          dhesap $+($gettok($regml(k,1),1,112),$chr(32),$chr(42),$chr(32),$chr(112),$gettok($regml(k,1),2,112)) $chr(61) [ [ $+($chr(36),$regml(h,1),$chr(40),%ns1,$chr(41)) ] ] 
        }
        elseif $regex(k,$regml(h,2),/(pi)/) { 
          var %ns = $pi
          did -ra $dname 1 [ [ $+($chr(36),$regml(h,1),$chr(40),%ns,$chr(41)) ] ] 
          chesap $replacecs($regml(h,1),pi,Pi) $+ : 
          ;Burada sonda bir parantez vardı
          dhesap regml(h,2) $+ $replacecs($regml(k,1),pi,Pi) $chr(61) [ [ $+($chr(36),$regml(h,1),$chr(40),%ns,$chr(41)) ] ]  
        }
        else { 
          var %h = $+($chr(36),$regml(h,1),$chr(40),$regml(h,2),$chr(41)) 
          did -ra $dname 1 [ [ %h ] ] 
          chesap $replacecs($regml(h,1),pi,Pi,sin,Sinüs,cos,Kosinüs,tan,Tanjant,cot,Kotanjant) $+ : 
          dhesap $+($regml(h,1),$chr(40),$regml(h,2),$chr(41)) $chr(61) [ [ %h ] ] 
        }
      }
      elseif $did(42).state == 1 && $regex(s,$did(1).text,/^(asin|acot|atan)(\-1|\d|\d+\/\d+)$/) { 
        var %sn = $+($gettok($regml(s,2),1,47),$chr(32),$chr(47),$chr(32),$gettok($regml(s,2),2,47)),%ss = $+($chr(36),$regml(s,1),$chr(40),%sn,$chr(41),.deg) 
        did -ra $dname 1 [ [ %ss ] ] 
        chesap $replace($regml(s,1),asin,Arc Sinus,acot,Arc Kotanjant,atan,Arc Tanjant) $+ : 
        dhesap $regml(s,2) $chr(61) [ [ %ss ] ]  
      }
      elseif $did(43).state == 1 && $regex(s,$did(1).text,/^(asin|acot|atan)(\-1|\d|\d+\/\d+)$/) { 
        if $regex($regml(s,2),/\//) { 
          var %sn = $+($gettok($regml(s,2),1,47),$chr(32),$chr(47),$chr(32),$gettok($regml(s,2),2,47)),%ss = $+($chr(36),$regml(s,1),$chr(40),%sn,$chr(41)) 
          did -ra $dname 1 [ [ %ss ] ] 
          chesap $replace($regml(s,1),asin,Arc Sinus,acot,Arc Kotanjant,atan,Arc Tanjant) $+ : 
        dhesap $regml(s,2) $chr(61) [ [ %ss ] ] }
        else { 
          var %ss = $+($chr(36),$regml(s,1),$chr(40),$regml(s,2),$chr(41)) 
          did -ra $dname 1 [ [ %ss ] ] 
          chesap $replace($regml(s,1),asin,Arc Sinus,acot,Arc Kotanjant,atan,Arc Tanjant) $+ : 
          dhesap $regml(s,2) $chr(61) [ [ %ss ] ] 
        } 
      }
      elseif $regex(x,$did(1).text,/^(\d+\x5E\d+|\d+\x2E\d+\x5E\d+|\d+\x5E\d+\x2E\d+|\d+\x2E\d+\x5E\d+\x2E\d+)$/) { 
        did -ra $dname 1 $calc($regml(x,1)) 
        chesap x üssü y: 
        dhesap $regml(x,1) $chr(61) $calc($regml(x,1))
      }
      elseif $regex(p,$did(1).text,/^(\d+pi|\d+\x2E\d+pi)$/) {
        var %p1 = $gettok($regml(p,1),1,112),%p2 = $calc($pi * %p1)
        did -ra $dname 1 %p2 
        chesap Pi: 
        dhesap %p1 $chr(61) %p2 
      }
      elseif $regex(u2,$did(1).text,/^(x2\x5E\d+|x2\x5E\d+\x2E\d+)$/) { 
        var %u-2 = $regsubex(sc,$regml(u2,1),/^\w2\x5E(.+)$/,\1),%u_2 = $calc(%u-2 ^ 2) 
        did -ra $dname 1 %u_2 
        chesap Kare: 
        dhesap  $chr(61) %u_2 
      }
      elseif $regex(u3,$did(1).text,/^(x3\x5E\d+|x3\x5E\d+\x2E\d+)$/) { 
        var %u-3 = $regsubex(s3,$regml(u3,1),/^\w3\x5E(.+)$/,\1),%u_3 = $calc(%u-3 ^ 3) 
        did -ra $dname 1 %u_3 
        chesap Küp: 
      dhesap  $chr(61) %u_3 }
      elseif $regex(c1,$did(1).text,/^(nCr\d+\x2C\d+)$/) { 
        var %prm = $regsubex($regml(c1,1),/^nCr(.+)$/,\1) 
        did -ra $dname 1 [ [ $+($chr(36),cmb,$chr(40),%prm,$chr(41)) ] ] 
        chesap Kombinasyon: 
        dhesap %prm $chr(61) [ [ $+($chr(36),cmb,$chr(40),%prm,$chr(41)) ] ] 
      }
      elseif $regex(c1,$did(1).text,/^(nPr\d+\x2C\d+)$/) { 
        var %prs = $regsubex($regml(c1,1),/^nPr(.+)$/,\1) 
        did -ra $dname 1 [ [ $+($chr(36),per,$chr(40),%prs,$chr(41)) ] ] 
        chesap Permütasyon: 
        dhesap %prs $chr(61) [ [ $+($chr(36),per,$chr(40),%prs,$chr(41)) ] ] 
      }
      elseif $regex(f1,$did(1).text,/^(\x21\d+|\x21\d+\x2E\d+)$/) { 
        var %f1 = $regsubex($regml(f1,1),/\x21(.+)/,\1) 
        did -ra $dname 1 [ [ $fac(%f1) ] ] 
        chesap Faktöriyel: 
        dhesap $chr(33) $+ %f1 $chr(61) [ [ $fac(%f1) ] ] 
      }
      elseif $regex(q1,$did(1).text,/^(sqrt\d+|sqrt\d+\x2E\d+)$/) { 
        var %q1 = $regsubex(qq,$regml(q1,1),/sqrt(.+)/,\1) 
        did -ra $dname 1 [ [ $sqrt(%q1) ] ] 
        chesap Kök: 
        dhesap $regsubex(qq,$regml(q1,1),/sqrt(.+)/,\1) $chr(61) [ [ $sqrt(%q1) ] ] 
      } 
      elseif $regex(nm,$did(1).text,/^(\-?\d+[+-/x.]\d+|\-?\d+\x2E\d+[+-/x.]\d+|\-?\d+[+-/x.]\d+\x2E\d+)$/) { 
        var %nm = $regsubex(rsn,$regml(nm,1),/(\-?\d+|\-?\d+\x2E\d+)(\+|\-|x|\/)(\d+|\d+\x2E\d+)/,\1 $replace(\2,x,*) \3) 
        did -ra $dname 1 $calc(%nm) 
        chesap İşlem: 
        shesap $regml(rsn,1) $regml(rsn,2) $regml(rsn,3) 
        dhesap Sonuç: $calc(%nm) 
      }
    }
  }
}
________________

The Ghost of Christmas Past..

i'm here sometimes

Konu Feragat tarafından (08 Mayıs 2022 Saat 22:09 ) değiştirilmiştir.. Sebep: Faktöriyel güncellendi.
 
Alt 27 Mart 2022, 21:27   #2
Yanlış Bildiğin Yolda; Herkesle yürüyeceğine Doğru Bildiğin Yolda; Tek başına yürü..
Artist - ait Kullanıcı Resmi (Avatar)

Standart

Paylaşım için teşekkürler emeğinize sağlık

________________

mIRC Fonksiyonel Hesap Makinesi
 
Alt 27 Mart 2022, 21:28   #3
Emektar
Murat - ait Kullanıcı Resmi (Avatar)

Standart

Paylaşım İçin teşekkürler Emeğine Sağlık

 
Alt 27 Mart 2022, 21:45   #4
Standart

Emeklerinize sağlık

 
Alt 31 Mart 2022, 01:57   #5
Cumhuriyet Kadını
Reyhan - ait Kullanıcı Resmi (Avatar)

Standart

Emeğine sağlık

________________

bazen insanlar iyilesmek istemez.
cünkü ,
icindeki acı sevdiklerinin son hatirasidir..


per aspera ad astra ✨
 
Alt 02 Haziran 2022, 11:18   #6
IRC Vip Üyesi
Carpediem - ait Kullanıcı Resmi (Avatar)

Standart


________________

DEDİMKİ BÜYÜTÜRSEM DERDİMİ, BÜYÜTTÜĞÜM DERDİM KÜÇÜLTÜR BENİ,
EĞER KÜÇÜLTÜRSEM O DERDİ İŞTE O DERT O ZAMAN BÜYÜTÜR BENİ.
 
Alt 18 Haziran 2022, 17:42   #7
She
✰ ÖzeL..
She - ait Kullanıcı Resmi (Avatar)

Standart

Emeğinize sağlık paylaşım için teşekkür ederiz @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

________________

~ E & B ~
 
Alt 19 Haziran 2022, 00:00   #8
Özel Üye
Feragat - ait Kullanıcı Resmi (Avatar)

Standart

Alıntı:
She Nickli Üyeden Alıntı Mesajı göster
Emeğinize sağlık paylaşım için teşekkür ederiz @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Benim için zevk, uzun yıllar önce yapmıştım. Bir sitede php (Web alternatif dili) ile yapılmış bir fonksiyonel hesap makinesi görmüştüm ve bunun mIRC versiyonunu yapmalıyım demişim. Artık eskisi kadar yoğun uğraşamasam da fırsat oldukça yine uğraşmaya devam...

________________

The Ghost of Christmas Past..

i'm here sometimes
 


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı





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