Write a C and C++ Program to Perform Arithmetic Operations using Switch Case

Posted in

Write a C and C++ Program to Perform Arithmetic Operations using Switch Case
vinaykhatri

Vinay Khatri
Last updated on March 28, 2024

    Creating a basic calculator is certainly fun for beginners in programming. A basic calculator must perform addition, subtraction, multiplication, and division. There are various ways in programming to create a calculator.

    In this article, we will use a switch case to write our C and C++ programs to perform basic arithmetic operations. But, let us first understand briefly what a switch case is.

    What is a Switch Case in Programming?

    A switch case is a control statement in programming that executes a single code block among multiple alternatives based on the value of the stated expression or variable. It is analogous to the 'if...else...if" ladder. However, the syntax of the switch case statement is much easier to understand and write.

    Initially, the switch case takes an expression or variable. If it is an expression, it evaluates and obtains its value. If it is a variable, it directly takes its assigned value. Later, it compares this value with a set of case values mentioned in a switch case. If any value from the set matches, it executes that block of code.

    Syntax

    switch (expression) {
        case value1:
            // code block
            break;
        case value2:
            // code block
            break;
        ...
        default:
            // code block
            break;
    }

    Now, you have an idea about the switch case statement. You can use it to create a basic calculator.

    In our blog post, we will discuss creating a basic calculator using C and C++ . It will be capable of performing four basic arithmetic operations - addition, subtraction, multiplication, and division. The calculator will first ask users to choose the operation and then enter two numbers. It will display the result immediately.

    So, are you ready? Here we go!

    C Program to Perform Arithmetic Operations Using a Switch Case

    #include <stdio.h>
    
    int main() 
    {
        char operator;
        double num1, num2;
    	//ask user to enter the operator
        printf("Select the operator (+, -, *, /): ");
        scanf("%c", &operator);
        
        //ask user to enter two numbers
        printf("Enter two numbers (eg. 12 3): ");
        scanf("%lf %lf",&num1, &num2);
    	
    	//start switch case
        switch(operator)
        {	//if operator is addition
            case '+':
                printf("%.1lf + %.1lf = %.1lf",num1, num2, num1+num2);
                break;
    
    		// if operator is substraction
            case '-':
                printf("%.1lf - %.1lf = %.1lf",num1, num2, num1-num2);
                break;
                
    		//if operator is multiplication
            case '*':
                printf("%.1lf * %.1lf = %.1lf",num1, num2, num1*num2);
                break;
    	
    		//if operator is division
            case '/':
                printf("%.1lf / %.1lf = %.1lf",num1, num2, num1/num2);
                break;
    
            // if user enter a wrong operaotr
            default:
                printf("Please select the correct operator");
        }
    
        return 0;
    }

    Output

    Select the operator (+, -, *, /): *
    Enter two numbers (eg. 12 3): 4 5
    4.0 * 5.0 = 20.0

    C++ Program to Perform Arithmetic Operations Using a Switch Case

    #include<iostream.h>
    #include<conio.h>
    void main()
    {
    clrscr();
    float num_1,num_2;
    int operation;
    
    cout<<"What Arithmetic Operation do you want to perform:\n";
    cout<<"Press 1 for Addition \n" ;
    cout<<"Press 2 for Subtraction\n";
    cout<<"Press 3 for Multiplication\n";
    cout<<"Press 4 for Division\n";
    cin>>operation;
    
    cout<<"Now Enter Two Numbers\n";
    cin>>num_1>>num_2;
    
    switch (operation)
    
        {
        case 1:
        cout<<"The Addition result is: "<<num_1+num_2;
        break;
    
        case 2:
        cout<<"The Subtraction result is: "<<num_1-num_2;
        break;
    
        case 3:
        cout<<"The Multiplication result is: "<<num_1*num_2;
        break;
    
        case 4:
        cout<<"The Division result is: "<<num_1/num_2;
        break;
        }
    getch();
    }

    Sample Output:

    What Arithmetic Operation do you want to perform:
    Press 1 for Addition
    Press 2 for Subtraction
    Press 3 for Multiplication
    Press 4 for Division
    
    4
    
    Now Enter Two Numbers
    
    100
    30
    
    The Division result is: 3.33333

    C++ Program for Arithmetic Operations Using Switch Case and Function

    The above example is not modular. We have implemented all the logic in the main program. We can also implement the same using a C++ function .

    You would ask why to use the function. The answer is simple. Functions make the code modular and easy to read. For this particular example, the function implementation won't change the program's legibility much.

    Now, let's write a menu-driven program to perform arithmetic operations in C++ using function and switch case.

    #include <iostream>
    using namespace std;
    
    // function to perfrom C++ operation
    void arithmetic(float num_1, float num_2)
    {
        int operation;
        cout<<"What Arithmetic Operation do you want to perform:\n";
        cout<<"Press 1 for Addition \n" ;
        cout<<"Press 2 for Subtraction\n";
        cout<<"Press 3 for Multiplication\n";
        cout<<"Press 4 for Division\n"; cin>>operation;
        
        switch (operation)
        
            {
            case 1:
            cout<<"The Addition result is: "<<num_1+num_2;
            break;
        
            case 2:
            cout<<"The Subtraction result is: "<<num_1-num_2;
            break;
        
            case 3:
            cout<<"The Multiplication result is: "<<num_1*num_2;
            break;
        
            case 4:
            cout<<"The Division result is: "<<num_1/num_2;
            break;
            }
    }
    
    int main() {
        
        float num_1, num_2;
        cout<<"Now Enter Two Numbers\n"; cin>>num_1>>num_2;
        
        // call the function
        arithmetic(num_1, num_2);
    
        return 0;
    }

    Output

    Now Enter Two Numbers
    20 40
    What Arithmetic Operation do you want to perform:
    Press 1 for Addition 
    Press 2 for Subtraction
    Press 3 for Multiplication
    Press 4 for Division
    1
    The Addition result is: 60

    Conclusion

    That sums up this demonstration to perform arithmetic operations using a switch case in C++. With the programs mentioned above, we have developed a basic calculator that can perform addition, subtraction, multiplication, and division.

    In this article, we have covered two different ways to implement a C++ program for arithmetic operation using a switch case. Note that this is only one way of writing this program. You can also try to write it as you find best. The more options you'll explore, the better you will learn.

    All the best!

    People are also reading:

    Leave a Comment on this Post

    0 Comments