eXorithm – Execute Algorithm: View / Run Algorithm indefinite_article

function indefinite_article ($word$explicit_a$explicit_an

{

  // adapted from http://search.cpan.org/~dconway/Lingua-EN-Inflect/

  

  # HANDLE SPECIAL CASES

  if (preg_match'/^'implode'|'$explicit_a).'/i'$word)) return "a $word"

  if (preg_match'/^'implode'|'$explicit_an).'/i'$word)) return "an $word"

  

  # HANDLE ABBREVIATIONS

  if (preg_match'/^((?!FJO|[HLMNS]Y.|RY[EO]|SQU|(F[LR]?|[HL]|MN?|N|RH?|S[CHKLMNPTVW]?|X(YL)?)[AEIOU])[FHLMNRSX][A-Z])/'$word)) return "an $word"

  if (preg_match'/^[aefhilmnorsx]$/i'$word)) return "an $word"

  if (preg_match'/^[aefhilmnorsx][.-]/i'$word)) return "an $word"

  if (preg_match'/^[bcdgjkpqtuvwyz]$/i'$word)) return "a $word"

  if (preg_match'/^[bcdgjkpqtuvwyz][.-]/i'$word)) return "a $word"

  

  # HANDLE ORDINAL FORMS

  if (preg_match'/^[bcdgjkpqtuvwyz]-?th$/i'$word)) return "a $word"

  if (preg_match'/^[aefhilmnorsx]-?th$/i'$word)) return "an $word"

  

  # HANDLE CONSONANTS

  if (preg_match'/^[^aeiouy]/i'$word)) return "a $word"

  

  # HANDLE SPECIAL VOWEL-FORMS

  if (preg_match'/^e[uw]/i'$word)) return "a $word"

  if (preg_match'/^onc?eb/i'$word)) return "a $word"

  if (preg_match'/^uni([^nmd]|mo)/i'$word)) return "a $word"

  if (preg_match'/^ut[th]/i'$word)) return "an $word"

  if (preg_match'/^u[bcfhjkqrst][aeiou]/i'$word)) return "a $word"

  

  # HANDLE SPECIAL CAPITALS

  if (preg_match'/^U[NK][AIEO]?/'$word)) return "a $word"

  

  # HANDLE VOWELS

  if (preg_match'/^[aeiou]/i'$word)) return "an $word"

  

  # HANDLE y... (BEFORE CERTAIN CONSONANTS IMPLIES (UNNATURALIZED) "i.." SOUND)

  if (preg_match'/^(y(b[lor]|cl[ea]|fere|gg|p[ios]|rou|tt))/i'$word)) return "an $word"

  

  # OTHERWISE, GUESS "a"

  return "a $word"

eXorithm – Execute Algorithm: View / Run Algorithm list_prime

function list_prime ($min$max$return_string

{

  $count = $min

  $numbert = 2;

  $return = array();

  while ($count < $max ) {

    $div_count=0;

    for ( $i=1;$i<=$number$i++)

      if (($number$i)==0)

        $div_count++;

    if ($div_count<3) {

      $return[] = $number

      $count += 1;

    }

    $number += 1;

  }

  unset$return[0]);

  if$return_string

    $return = implode", "$return);

  return $return

eXorithm – Execute Algorithm: View / Run Algorithm gaussian_curve

function gaussian_curve ($expected$variance
{
  $a = 1/(sqrt$variancepi()*2));
  $b = $expected
  $c = sqrt$variance);
  
  // gaussian function:
  // f(x) = ae^(-((x-b)^2)/(2*c^2))
  // http://en.wikipedia.org/wiki/Gaussian_function
  
  $f = array'*'$a
             array'^'exp(1),
                   array'neg'
                         array'/'
                               array'^'array'-''x'$b), 2),
                               array'*', 2, array'^'$c, 2))))));
  
  // evaluate 
  $max = evaluate_for_x$f$b);
  $width = 600;
  $height = ceil$max$width/10);
  if ($height<200) $height = 200;
  
  return plot_function$f'x'$b-5, $b+5, $width$height, 1);

eXorithm – Execute Algorithm: View / Run Algorithm scientific_notation

function scientific_notation ($value$condensed

{

  $e = 0;

  

  while$value>=10 || $value<1)

  {

    if$value<=1)

    {

      $value *= 10;

      $e--;

    }

    else

    {

      if$value>=10)

      {

        $value /= 10;

        $e++;

      }

    }

  }

  if$condensed

    return $value . "E" . $e

  return $value . " x 10<sup>" . $e . "</sup>"

eXorithm – Execute Algorithm: View / Run Algorithm photobucket

function photobucket ($url

{

  $str = file_get_contents$url);

  preg_match_all'/<img[^>]+>/i'$str$result); 

  

  $strPics = ""

  foreach$result as $img_tag) {

    foreach$img_tag as $img) {

      if( !strpos$img'class="under off"') ) continue

      preg_match'/< *img[^>]*src *= *["']?([^"']*)/i'$img$imgURLs);

      $imgURL = str_replace"/th_""/"$imgURLs[1]);

      $strPics .= $imgURL . "n"

    }

  }

  return $strPics