==[8 kyu]
[2017-03-11]
description:
Your task is to create a function - basic_op().
The function should take three arguments - operation(string/char), value1(number), value2(number). The function should return result of numbers after applying the chosen operation.
/* adapted from the tests originally written by a code warrior Quickz */
#include <criterion/criterion.h>
int basic_op(char op, int value1, int value2);
Test(ExampleTests, ShouldPassAllTheTestsProvided) {
cr_assert_eq(basic_op('+', 4, 7), 11);
cr_assert_eq(basic_op('-', 15, 18), -3);
cr_assert_eq(basic_op('*', 5, 5), 25);
cr_assert_eq(basic_op('/', 49, 7), 7);
}
/*
int basic_op(char op, int value1, int value2) {
if(op == '+'){
return value1 + value2;
}else if(op == '-'){
return value1 - value2;
}else if(op == '*'){
return value1 * value2;
}else if(op == '/'){
return value1 / value2;
}
}
*/
int basic_op(char op, int x, int y) {
switch(op) {
case '+': return x + y;
case '-': return x - y;
case '*': return x * y;
case '/': return x / y;
default: return x;
}
}