diff --git a/calculator.cpp b/calculator.cpp new file mode 100644 index 0000000..abc1234 --- /dev/null +++ b/calculator.cpp @@ -0,0 +1,28 @@ +#include "calculator.h" + +double Calculator::add(double a, double b) { + return a + b; +} + +double Calculator::divide(double a, double b) { + if (b == 0) { + throw std::invalid_argument("Division by zero"); + } + return a / b; +} + +std::vector Calculator::processNumbers(const std::vector& numbers, std::function processor) { + std::vector result; + + for (const auto& num : numbers) { + result.push_back(processor(num)); + } + + return result; +}