# Calculator based on switch statement : switch « Operators statements « C++ Tutorial

Home
C++ Tutorial
 1 Language Basics 2 Data Types 3 Operators statements 4 Array 5 Development 6 Exceptions 7 Function 8 Structure 9 Class 10 Operator Overloading 11 Pointer 12 File Stream 13 template 14 STL Introduction 15 string 16 vector 17 list 18 bitset 19 set multiset 20 valarray 21 queue stack 22 deque 23 map multimap 24 STL Algorithms Modifying sequence operations 25 STL Algorithms Non modifying sequence operations 26 STL Algorithms Binary search 27 STL Algorithms Sorting 28 STL Algorithms Merge 29 STL Algorithms Min Max 30 STL Algorithms Iterator 31 STL Algorithms Heap 32 STL Algorithms Helper
 C++ Tutorial » Operators statements » switch

 ```#include  int   result;      char  oper_char;    int   value;       int main() {     result = 0;                     while (true) {        std::cout << "Result: " << result << '\n';        std::cout << "Enter operator and number: ";             std::cin >> oper_char >> value;             if ((oper_char == 'q') || (oper_char == 'Q'))            break;             switch (oper_char) {            case '+':                result += value;                break;            case '-':                result -= value;                break;            case '*':                result *= value;                break;            case '/':                if (value == 0) {                    std::cout << "Error:Divide by zero\n";                    std::cout << "   operation ignored\n";                } else                    result /= value;                break;            default:                std::cout << "Unknown operator " << oper_char << '\n';                break;        }     }     return (0); }```
 3.14.switch 3.14.1. The switch 3.14.2. A switch without break statements. 3.14.3. switch case falling through 3.14.4. char navigation based on switch 3.14.5. A Help system that process multiple requests. 3.14.6. switch statement based on data type 3.14.7. Calculator based on switch statement