Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Q1
- void mathStringCalc(const char mathString[])
- {
- int j = 0, i = 0, num = 0, k = 0;
- int numbers[101];
- double result = 0;
- char operation[101];
- for (j = 0; mathString[j] != '\0';j = i+3, ++k, num = 0) {
- for (i = j; mathString[i] != ' ' && mathString[i] != '\0'; i++) {
- num = num * 10 + (mathString[i] - '0');
- }
- numbers[k] = num;
- operation[k] = mathString[i + 1];
- }
- result = numbers[0];
- for (int tmp = 0;operation[tmp] != '\0' ;tmp++) {
- switch (operation[tmp]) {
- case '+':
- result = result + numbers[tmp+1];
- break;
- case '-':
- result = result - numbers[tmp + 1];
- break;
- case '*':
- result = result * numbers[tmp + 1];
- break;
- case '/':
- result = result / numbers[tmp + 1];
- break;
- default:
- break;
- }
- }
- printf("%s = %.3lf\n", mathString, result);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement