Operadores en C | Conjunto 1 (operadores aritméticos)

Los operadores son la base de cualquier lenguaje de programación. Por lo tanto, la funcionalidad del lenguaje C está incompleta sin el uso de operadores. Los operadores nos permiten realizar diferentes tipos de operaciones en los operandos. En C, los operadores en Se pueden clasificar en las siguientes categorías: 

  • Operadores aritméticos (+, -, *, /, %, post-incremento, pre-incremento, post-decremento, pre-decremento)
  • Operadores relacionales (==, !=, >, <, >= y <=) Operadores lógicos (&&, || y !)
  • Operadores bit a bit (&, |, ^, ~, >> y <<)
  • Operadores de asignación (=, +=, -=, *=, etc.)
  • Otros operadores (condicional, coma, tamaño de, dirección, redirección)

Operadores aritméticos: se utilizan para realizar operaciones aritméticas/matemáticas en operandos. Los operadores binarios que caen en esta categoría son: 

  • Adición: el operador ‘+’ suma dos operandos. Por ejemplo, x+y .
  • Resta: el operador ‘-‘ resta dos operandos. Por ejemplo, xy .
  • Multiplicación: El operador ‘*’ multiplica dos operandos. Por ejemplo, x*y .
  • División: El operador ‘/’ divide el primer operando por el segundo. Por ejemplo, x/y .
  • Módulo: el operador ‘%’ devuelve el resto cuando el primer operando se divide por el segundo. Por ejemplo, x%y .

C

// C program to demonstrate
// working of binary arithmetic
// operators
#include <stdio.h>
 
int main()
{
    int a = 10, b = 4, res;
 
    // printing a and b
    printf("a is %d and b is %d\n", a, b);
 
    res = a + b; // addition
    printf("a+b is %d\n", res);
 
    res = a - b; // subtraction
    printf("a-b is %d\n", res);
 
    res = a * b; // multiplication
    printf("a*b is %d\n", res);
 
    res = a / b; // division
    printf("a/b is %d\n", res);
 
    res = a % b; // modulus
    printf("a%%b is %d\n", res);
 
    return 0;
}

C++

#include <iostream>
using namespace std;
 
int main() {
    int a = 10, b = 4, res;
 
    // printing a and b
    cout<<"a is "<<a<<" and b is "<<b<<"\n";
 
    // addition
    res = a + b; 
    cout << "a+b is: "<< res << "\n";
 
    // subtraction
    res = a - b; 
    cout << "a-b is: "<< res << "\n";
     
    // multiplication
    res = a * b; 
    cout << "a*b is: "<< res << "\n";
     
    // division
    res = a / b;
    cout << "a/b is: "<< res << "\n";
     
    // modulus
    res = a % b;
    cout << "a%b is: "<< res << "\n";
 
    return 0;
}

Producción: 

a is 10 and b is: 4
a+b is: 14
a-b is: 6
a*b is: 40
a/b is: 2
a%b is: 2

Los que caen en la categoría de operadores aritméticos unarios son: 

  • Incremento: el operador ‘++’ se utiliza para incrementar el valor de un número entero. Cuando se coloca antes del nombre de la variable (también llamado operador de preincremento), su valor se incrementa instantáneamente. Por ejemplo, ++x
    Y cuando se coloca después del nombre de la variable (también llamado operador de incremento posterior), su valor se conserva temporalmente hasta la ejecución de esta instrucción y se actualiza antes de la ejecución de la siguiente instrucción. Por ejemplo, x++ .
  • Decremento: El operador ‘ – – ‘ se utiliza para disminuir el valor de un número entero. Cuando se coloca antes del nombre de la variable (también llamado operador de decremento previo), su valor se decrementa instantáneamente. Por ejemplo, – – x
    Y cuando se coloca después del nombre de la variable (también llamado operador posterior al decremento), su valor se conserva temporalmente hasta la ejecución de esta instrucción y se actualiza antes de la ejecución de la siguiente instrucción. Por ejemplo, x – – .

C

// C program to demonstrate working
// of Unary arithmetic
// operators
#include <stdio.h>
 
int main()
{
    int a = 10, b = 4, res;
 
    // post-increment example:
    // res is assigned 10 only, a is not updated yet
    res = a++;
    printf("a is %d and res is %d\n", a,
           res); // a becomes 11 now
 
    // post-decrement example:
    // res is assigned 11 only, a is not updated yet
    res = a--;
    printf("a is %d and res is %d\n", a,
           res); // a becomes 10 now
 
    // pre-increment example:
    // res is assigned 11 now since
    // a is updated here itself
    res = ++a;
     
    // a and res have same values = 11
    printf("a is %d and res is %d\n", a, res);
 
    // pre-decrement example:
    // res is assigned 10 only since a is updated here
    // itself
    res = --a;
     
    // a and res have same values = 10
    printf("a is %d and res is %d\n", a, res);
 
    return 0;
}

C++

#include <iostream>
using namespace std;
 
int main()
{
    int a = 10, b = 4, res;
 
    // post-increment example:
    // res is assigned 10 only,
    // a is not updated yet
    res = a++;
    // a becomes 11 now
    cout << "a is " << a
         << " and res is "
         << res << "\n";
 
    // post-decrement example:
    // res is assigned 11 only,
    // a is not updated yet
    res = a--;
    // a becomes 10 now
    cout << "a is " << a
         << " and res is "
         << res << "\n";
 
    // pre-increment example:
    // res is assigned 11 now
    // since a is updated here itself
    res = ++a;
     
    // a and res have same values = 11
    cout << "a is " << a
         << " and res is "
         << res << "\n";
 
    // pre-decrement example:
    // res is assigned 10 only
    // since a is updated here
    // itself
    res = --a;
    // a and res have same values = 10
    cout << "a is " << a
         << " and res is "
         << res << "\n";
 
    return 0;
}

Producción: 

a is 11 and res is 10
a is 10 and res is 11
a is 11 and res is 11
a is 10 and res is 10

Pronto estaremos discutiendo otras categorías de operadores en diferentes publicaciones.
Para obtener información sobre la precedencia de operadores y la asociatividad , consulte este enlace:
Cuestionario sobre operadores en C
Este artículo es una contribución de Ayush Jaggi. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *