Neste tópico, discutiremos como escrevemos um programa de calculadora na linguagem de programação C. Uma Calculadora é um pequeno dispositivo eletrônico utilizado para realizar diversas operações aritméticas como adição, subtração, multiplicação, divisão, porcentagem, etc. É um dispositivo portátil que pode ser usado em qualquer lugar para realizar operações matemáticas simples. Utilizamos uma calculadora científica ou sofisticada em algumas situações, onde precisamos resolver cálculos complexos como funções trigonométricas, operadores exponenciais, graus, radianos, funções logarítmicas, funções hiperbólicas etc. .
Algoritmo do Programa Calculadora
Passo 1: Declare variáveis locais n1, n2, res, opt. Por exemplo, onde n1 e n2 assumem dois valores numéricos, res armazenará os resultados e a variável opt definirá os símbolos do operador.
Passo 2: Imprima a escolha (adição, subtração, multiplicação, divisão, etc.
Etapa 3: Insira a escolha
Passo 4: Leva dois números, n1 e n2
Etapa 5: Alternar caso salta para um operador selecionado pelo usuário
Etapa 6: Armazene o resultado na variável res.
Etapa 7: Exibir o resultado da operação
Etapa 8: Saia do programa.
Diferentes maneiras de criar um programa de calculadora em C
A seguir estão as diferentes maneiras de escrever um programa de calculadora na linguagem C.
- Programa de calculadora em C usando a instrução switch
- Programa de calculadora em C usando a instrução if else if
- Programa de calculadora em C usando loop do-while e instrução switch
- Programa de calculadora em C usando função e instrução switch
Exemplo 1: Programa de calculadora em C usando a instrução switch
Vamos escrever um programa para criar um programa Calculadora usando a instrução switch
comando linux make
programa.c
#include int main() { // declare local variables char opt; int n1, n2; float res; printf (' Choose an operator(+, -, *, /) to perform the operation in C Calculator '); scanf ('%c', &opt); // take an operator if (opt == '/' ) { printf (' You have selected: Division'); } else if (opt == '*') { printf (' You have selected: Multiplication'); } else if (opt == '-') { printf (' You have selected: Subtraction'); } else if (opt == '+') { printf (' You have selected: Addition'); } printf (' Enter the first number: '); scanf(' %d', &n1); // take fist number printf (' Enter the second number: '); scanf (' %d', &n2); // take second number switch(opt) { case '+': res = n1 + n2; // add two numbers printf (' Addition of %d and %d is: %.2f', n1, n2, res); break; case '-': res = n1 - n2; // subtract two numbers printf (' Subtraction of %d and %d is: %.2f', n1, n2, res); break; case '*': res = n1 * n2; // multiply two numbers printf (' Multiplication of %d and %d is: %.2f', n1, n2, res); break; case '/': if (n2 == 0) // if n2 == 0, take another number { printf (' Divisor cannot be zero. Please enter another value '); scanf ('%d', &n2); } res = n1 / n2; // divide two numbers printf (' Division of %d and %d is: %.2f', n1, n2, res); break; default: /* use default to print default message if any condition is not satisfied */ printf (' Something is wrong!! Please check the options '); } return 0; }
Saída:
Exemplo 2: Programa de calculadora em C usando a instrução if else if
Vamos considerar um exemplo para escrever um programa Calculadora simples em C usando a instrução if else if.
programa2.c
#include int main() { // declare local variables char opt; int n1, n2; float res; printf (' Select an operator (+, -, *, /) to perform an operation in C calculator '); scanf ('%c', &opt); // take an operator printf (' Enter the first number: '); scanf(' %d', &n1); // take fist number printf (' Enter the second number: '); scanf (' %d', &n2); // take second number if (opt == '+') { res = n1 + n2; // add two numbers printf (' Addition of %d and %d is: %f', n1, n2, res); } else if (opt == '-') { res = n1 - n2; // subtract two numbers printf (' Subtraction of %d and %d is: %f', n1, n2, res); } else if (opt == '*') { res = n1 * n2; // multiply two numbers printf (' Multiplication of %d and %d is: %f', n1, n2, res); } else if (opt == '/') { if (n2 == 0) // if n2 == 0, take another number { printf (' Divisor cannot be zero. Please enter another value '); scanf ('%d', &n2); } res = n1 / n2; // divide two numbers printf (' Division of %d and %d is: %.2f', n1, n2, res); } else { printf(' You have entered wrong inputs '); } return 0; }
Saída:
Exemplo 3: Programa de calculadora em C usando loop do while e instrução switch
Vamos criar um programa Calculadora usando o loop do while e a instrução switch case em C
programa3.c
#include #include #include int main() { // declaration of local variable op; int op, n1, n2; float res; char ch; do { // displays the multiple operations of the C Calculator printf (' Select an operation to perform the calculation in C Calculator: '); printf (' 1 Addition 2 Subtraction 3 Multiplication 4 Division 5 Square 6 Square Root 7 Exit Please, Make a choice '); scanf ('%d', &op); // accepts a numeric input to choose the operation // use switch statement to call an operation switch (op) { case 1: // Add two numbers printf (' You chose: Addition'); printf (' Enter First Number: '); scanf (' %d', &n1); printf (' Enter Second Number: '); scanf (' %d', &n2); res = n1 + n2; // Add two numbers printf (' Addition of two numbers is: %.2f', res); break; // break the function case 2: // Subtract two numbers printf (' You chose: Subtraction'); printf (' Enter First Number: '); scanf (' %d', &n1); printf (' Enter Second Number: '); scanf (' %d', &n2); res = n1 - n2; // subtract two numbers printf (' Subtraction of two numbers is: %.2f', res); break; // break the function case 3: // Multiplication of the numbers printf (' You chose: Multiplication'); printf (' Enter First Number: '); scanf (' %d', &n1); printf (' Enter Second Number: '); scanf (' %d', &n2); res = n1 * n2; // multiply two numbers printf (' Multiplication of two numbers is: %.2f', res); break; // break the function case 4: // Division of the numbers printf (' You chose: Division'); printf (' Enter First Number: '); scanf (' %d', &n1); printf (' Enter Second Number: '); scanf (' %d', &n2); if (n2 == 0) { printf (' Divisor cannot be zero. Please enter another value '); scanf ('%d', &n2); } res = n1 / n2; // divide two numbers printf (' Division of two numbers is: %.2f', res); break; // break the function case 5: // getting square of a number printf (' You chose: Square'); printf (' Enter First Number: '); scanf (' %d', &n1); res = n1 * n1; // get square of a number printf (' Square of %d number is: %.2f', n1, res); break; // break the function case 6: // getting the square root of the number printf (' You chose: Square Root'); printf (' Enter First Number: '); scanf (' %d', &n1); res = sqrt(n1); // use sqrt() function to find the Square Root printf (' Square Root of %d numbers is: %.2f', n1, res); break; // break the function case 7: printf (' You chose: Exit'); exit(0); break; // break the function default: printf(' Something is wrong!! '); break; } printf (' ********************************************** '); } while (op != 7); return 0; }
Saída:
Exemplo 4: Programa de calculadora em C usando função e instrução switch
Vamos criar um programa Calculadora usando função e instrução switch case em C
programa4.c
#include #include #include #include // function declarations int addition(); int subtract(); int multiply(); int divide(); int sq(); int sqrt1(); void exit(); int main() { // declaration a local variable op; int op; do { // displays the multiple operations of the C Calculator printf (' Select an operation to perform the calculation in C Calculator: '); printf (' 1 Addition 2 Subtraction 3 Multiplication 4 Division 5 Square 6 Square Root 7 Exit Please, Make a choice '); scanf ('%d', &op); // accepts a numeric input to choose the operation // use switch statement to call an operation switch (op) { case 1: addition(); /* It call the addition() function to add the given numbers */ break; // break the function case 2: subtract(); /* It call the subtract() function to subtract the given numbers */ break; // break the function case 3: multiply(); /* It call the multiply() function to multiply the given numbers */ break; // break the function case 4: divide(); // It call the divide() function to divide the given numbers break; // break the function case 5: sq(); // It call the sq() function to get the square of given numbers break; // break the function case 6: sqrt1(); /* It call the sqrt1() function to get the square root of given numbers */ break; // break the function case 7: exit(0); // It call the exit() function to exit from the program break; // break the function default: printf(' Something is wrong!! '); break; } printf (' ********************************************** '); } while (op != 7); return 0; } // function definition int addition() { int i, sum = 0, num, f_num; // declare a local variable printf (' How many numbers you want to add: '); scanf ('%d', &num); printf (' Enter the numbers: '); for (i = 1; i <= num; i++) { scanf(' %d', &f_num); sum="sum" + f_num; } printf (' total of the numbers="%d'," sum); return 0; use subtract() function to subtract two int n1, n2, res; first number is: '); scanf &n1); second &n2); res="n1" - n2; subtraction %d res); multiply() multiply * divide() divide if (n2="=" 0) divisor cannot be zero. please enter another value ('%d', division sq() get square given a square: n1; sqrt1() root float root: %f', < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/c-tutorial/61/calculator-program-c-5.webp" alt="Calculator Program in C"> <hr></=>