commit existing workshops

This commit is contained in:
boris
2024-10-17 00:35:53 +01:00
parent 4070dc5367
commit ed02b435fe
74 changed files with 1083 additions and 91 deletions

View File

@@ -0,0 +1,50 @@
<?php
class Calculator
{
/*
* Class for calculating 2 numbers
*/
var $expression;
/*
* Constructor takes 2 numbers and an operator
* @param int $number Number to be converted
* @param string $unit Conversion unit
*/
public function __construct($expression = '')
{
$this->expression = $expression;
}
/*
* Calculates number and returns result
* @return string Result of calculation
*/
public function calculate(): string
{
$result = false;
$this->expression = preg_replace('/\s+/', '', $this->expression);
if(preg_match('/(\d+)([x\*\-\+\/])(\d+)/', $this->expression, $matches)) {
$number1 = $matches[1];
$operator = $matches[2];
$number2 = $matches[3];
if (is_numeric($number1) && is_numeric($number2)) {
switch ($operator) {
case '+':
$result = ($number1 + $number2);
break;
case '-':
$result = ($number1 - $number2);
break;
case '*':
case 'x':
$result = ($number1 * $number2);
break;
case '/':
$result = ($number1 / $number2);
break;
}
}
} return $result;
}
}