fork download
  1. #include <cctype>
  2. #include <cstring>
  3. #include <iostream>
  4.  
  5. int main() {
  6. char s[100];
  7. char oper = 0;
  8. int res1 = 0, res2 = 0, a = 0;
  9. std::cin.getline(s, sizeof(s));
  10. int len = strlen(s);
  11. for (int i = 0; i < len; i++) {
  12. while (isdigit(s[i]) && i < len) {
  13. res1 = 10 * res1 + s[i] - '0';
  14. i++;
  15. }
  16. while (s[i] == ' ' && i < len) i++;
  17. oper = s[i++];
  18. while (s[i] == ' ' && i < len) i++;
  19. while (isdigit(s[i]) && i < len) {
  20. res2 = 10 * res2 + s[i] - '0';
  21. i++;
  22. }
  23. }
  24. switch (oper) {
  25. case '+':
  26. a = res1 + res2;
  27. break;
  28. case '-':
  29. a = res1 - res2;
  30. break;
  31. case '*':
  32. a = res1 * res2;
  33. break;
  34. case '/':
  35. if (res2) a = res1 / res2;
  36. else std::cout << "\nError\n";
  37. break;
  38. case '%':
  39. if (res2) a = res1 % res2;
  40. else std::cout << "\nError\n";
  41. break;
  42. default:
  43. std::cout << "\nError\n";
  44. break;
  45. }
  46. std::cout << a << '\n';
  47. return 0;
  48. }
  49.  
Success #stdin #stdout 0s 4192KB
stdin
15 / 3
stdout
5