fork download
  1. <?php
  2.  
  3. $input = '-16-1=';
  4. $result = 'Нет ответа';
  5. $regexp = '!([0-9\\.]+)!';
  6.  
  7. $example = array();
  8. $example = preg_split($regexp, $input, 0, PREG_SPLIT_NO_EMPTY|
  9. PREG_SPLIT_DELIM_CAPTURE);
  10.  
  11. $result = (float)$example[0];
  12.  
  13. foreach ($example as $key => $value)
  14. if ($key % 2 === 1) {
  15. switch($value) {
  16. case '+': $result += (float)$example[$key+1]; break;
  17. case '-': $result -= (float)$example[$key+1]; break;
  18. case '*': $result *= (float)$example[$key+1]; break;
  19. case '/': $result /= (float)$example[$key+1]; break;
  20. case '=': echo "Ответ: ", $input, $result; break 2;
  21. default: echo "Что-то пошло не так. Символы то верные ввёл?";
  22. };
  23. }
Success #stdin #stdout 0.02s 24192KB
stdin
Standard input is empty
stdout
Что-то пошло не так. Символы то верные ввёл?Что-то пошло не так. Символы то верные ввёл?