manish

Mathematical Functions by manish

Mar 12th, 2017
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 1.81 KB | None | 0 0
  1. ############################################################
  2. ##       Mathematical Functions Script          ##
  3. ##       Version: 1.0              ##
  4. ##       By: manish              ##
  5. ##       irc.lunarirc.net   #LunarIRC     Talk with me : User - manish  
  6. ## COMMAND - !math <numbers> or /math <numbers> ##
  7. ############################################################
  8.  
  9.  
  10. alias math {
  11.   var %numbers = $sorttok($1-,32,n)
  12.   set %x 1
  13.   set %sum 0
  14.   set %maxfreq 1
  15.   set %curfreq 1
  16.   set %mode $gettok(%numbers, 1, 32)
  17.   %total_numbers = $numtok(%numbers,32)
  18.   %half = %total_numbers / 2
  19.   if ( $int( %half ) == %half ) { set %n even }
  20.   else { set %n odd }  
  21.   while ( %x <= %total_numbers ) {
  22.     %current_number = $gettok(%numbers, %x, 32)
  23.     %sum = %sum + %current_number
  24.     if ( %x >= 2 ) {
  25.       %y = %x - 1
  26.       if ( $gettok(%numbers, %y, 32) == $gettok(%numbers, %x, 32) ) {
  27.         inc %curfreq
  28.       }
  29.       else {
  30.         set %curfreq 1
  31.       }
  32.       if ( %curfreq > %maxfreq ) {
  33.         set %maxfreq %curfreq
  34.         set %mode $gettok(%numbers, %x, 32)
  35.       }
  36.     }
  37.     inc %x
  38.   }
  39.   if ( %n == even ) {
  40.     %p = %half + 1
  41.     set %p1 $gettok(%numbers, %half, 32) + $gettok(%numbers, %p, 32)
  42.     set %median %p1 / 2
  43.   }
  44.   if ( %n == odd ) {
  45.     %p = %total_numbers + 1
  46.     %q = %p / 2
  47.     set %median $gettok(%numbers, %q, 32)
  48.   }
  49.   set %mean %sum / %total_numbers
  50.   if ($isid) {
  51.     if ($prop == mean) { return %mean }
  52.     if ($prop == median) { return %median }
  53.     if ($prop == mode) { return %mode }
  54.   }
  55.   elseif (!$isid) {
  56.     notice $nick Mean : %mean - Median : %median - Mode : %mode -
  57. } }
  58. on *:TEXT:!math*:#: {
  59.   if ( $2 isnum ) {
  60.     msg $chan    Mean : $math( $2- ).mean -  .   Median : $math( $2- ).median  -  .   Mode : $math( $2- ).mode  - }}
Add Comment
Please, Sign In to add comment