Advertisement
Guest User

Untitled

a guest
Feb 19th, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.75 KB | None | 0 0
  1. <?php
  2. function stack_machine_emulator ( $S ) {
  3.  
  4.     $raw_string = str_split($S);
  5.     $stack_array = array();
  6.  
  7.     foreach ($raw_string as $value)
  8.     {
  9.         if (is_numeric($value))
  10.         {
  11.             $stack_array[] = $value;
  12.         }
  13.  
  14.         if ($value == '+')
  15.         {
  16.             $value1 = array_pop($stack_array);
  17.             $value2 = array_pop($stack_array);
  18.  
  19.             $added = $value1 + $value2;
  20.  
  21.             $stack_array[] = $added;
  22.         }
  23.  
  24.         if ($value == '*')
  25.         {
  26.             $value1 = array_pop($stack_array);
  27.             $value2 = array_pop($stack_array);
  28.  
  29.             $multiplied = $value1 * $value2;
  30.  
  31.             $stack_array[] = $multiplied;
  32.         }
  33.     }
  34.  
  35.     return $stack_array[0];
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement