186 lines
5.8 KiB
Markdown
186 lines
5.8 KiB
Markdown
---
|
|
title: Operators
|
|
localeTitle: Los operadores
|
|
---
|
|
# Operadores:
|
|
|
|
* Los operadores le permiten realizar operaciones en sus datos.
|
|
* Los datos que se están operando se denominan _operandos_ .
|
|
* Los diferentes tipos de operadores en C ++ son:
|
|
* _Los OPERANDOS_ son los datos sobre los cuales el operador realiza ciertos comandos.
|
|
* Los operadores son de 3 tipos: unario (funciona en 1 operando), binario (funciona en 2 operandos), ternario (trabaja en 3 operandos).
|
|
|
|
### 1 Los operadores de E / S -
|
|
|
|
* Estos operadores le permiten dirigir la entrada y la salida.
|
|
|
|
## El oerador de entrada ">>" ##
|
|
|
|
se utiliza para leer datos de entrada estándar (la declaración "cin").
|
|
|
|
## El operador de salida "<<"
|
|
|
|
se utiliza para enviar la salida en la declaración `cout` .
|
|
|
|
|
|
### 2 Los operadores aritméticos -
|
|
|
|
* Estos operadores le permiten realizar operaciones aritméticas básicas.
|
|
|
|
1. El operador `+` _agrega_ los dos operandos.
|
|
|
|
2. El operador `-` _resta_ los dos operandos.
|
|
|
|
3. El operador `*` _multiplica_ los dos operandos.
|
|
|
|
4. El operador `/` _divide_ y da el _cociente_ de los dos operandos.
|
|
|
|
5. El operador `%` _divide_ y da el _resto_ de los dos operandos. (O, para el lector más inclinado matemáticamente, `a % b` es esencialmente el resultado de "a mod b"
|
|
|
|
### Ejemplo de uso de operadores aritméticos:
|
|
|
|
\`\` \`cpp
|
|
|
|
|
|
# incluir
|
|
|
|
utilizando namespace std;
|
|
|
|
int main () { int a = 5; // 1er operando int b = 10; // 2do operando
|
|
```
|
|
cout << "+ operator " << a+b << "\n"; //Add
|
|
cout << "- operator " << ab << "\n"; //Subtract
|
|
cout << "* operator " << a*b << "\n"; //Multiply
|
|
cout << "/ operator " << b/a << "\n"; //Find Quotient
|
|
cout << "modulus operator " << b%a << "\n"; //Find remainder
|
|
|
|
return 0;
|
|
```
|
|
|
|
} \`\` \`
|
|
|
|
SALIDA:
|
|
```
|
|
+ operator 15
|
|
- operator -5
|
|
* operator 50
|
|
/ operator 2
|
|
modulus operator 0
|
|
```
|
|
|
|
[Pruebe el código usted mismo! :)](https://repl.it/Mge9)
|
|
|
|
### El operador de incremento:
|
|
|
|
* `++` se conoce como el operador de incremento. Aumenta el valor de una variable entera en 1.
|
|
|
|
Los 2 tipos de incremento:
|
|
|
|
* Pre incrementa primero incrementa el valor y luego lo usa. Ejemplo: `int a ; ++a;`
|
|
* El incremento posterior primero usa la variable y luego la incrementa. Ejemplo: `int b; b++;`
|
|
|
|
### El operador decremento:
|
|
|
|
* `--` Es conocido como el operador decremento. Disminuye el valor de una variable entera en 1.
|
|
|
|
Los 2 tipos de decremento:
|
|
|
|
* La disminución previa disminuye primero el valor y luego lo utiliza. Ejemplo: `int a ; --a;`
|
|
* El decremento posterior primero usa la variable y luego la decrementa. Ejemplo: `int b; b--;`
|
|
|
|
Ejemplo de operadores de incremento y decremento:
|
|
|
|
```cpp
|
|
#include <iostream>
|
|
using namespace std;
|
|
|
|
int main()
|
|
{
|
|
int a = 3 ,b = 4;
|
|
|
|
// INCREMENT
|
|
cout<< "Value of int a PRE INCREMENTED : " << ++a << "\n";
|
|
cout<< "Value of int b POST INCREMENTED : " << b++ << "\n";
|
|
cout<< "Value of b is changed after using once : " << b << "\n";
|
|
|
|
// DECREMENT
|
|
cout << "\n"; //go to next line
|
|
a = 10; //Assigning a new value to a
|
|
b = 10; //Assigning a new value to b
|
|
cout << "Value of int a PRE DECREMENTED : " << --a << "\n";
|
|
cout << "Value of int b POST DECREMENTED : " << b-- << "\n";
|
|
cout << "Value of b is changed after using once : " << b << "\n";
|
|
|
|
return 0;
|
|
}
|
|
```
|
|
|
|
SALIDA:
|
|
```
|
|
Value of int a PRE INCREMENTED : 4
|
|
Value of int b POST INCREMENTED : 4
|
|
Value of b is changed after using once : 5
|
|
|
|
Value of int a PRE DECREMENTED : 9
|
|
Value of int b POST DECREMENTED : 10
|
|
Value of b is changed after using once : 9
|
|
```
|
|
|
|
[Pruebe el código usted mismo! :)](https://repl.it/Mgg4/2)
|
|
|
|
### 3: Operadores relacionales:
|
|
|
|
* Estos operadores nos dicen la relación entre 2 operandos y devuelven un valor booleano (0 o 1). Si la relación es `true` entonces resulta en 1. Si la realidad es falsa, entonces se convierte en 0.
|
|
|
|
* Los 6 operadores relacionales son:
|
|
|
|
1. Menos que `<`
|
|
2. Mayor que `>`
|
|
3. Menor o igual que `<=`
|
|
4. Mayor o igual a `>=`
|
|
5. Igual a `==`
|
|
6. No es igual a `!=`
|
|
|
|
### 4: Operadores lógicos:
|
|
|
|
* Estos operadores combinan expresiones para operaciones lógicas. Son :
|
|
|
|
1. AND `&&` lógico: se evalúa como verdadero si ambos valores son verdaderos.
|
|
|
|
2. OR lógico `||` : Se evalúa como verdadero si cualquier valor es verdadero.
|
|
|
|
3. ¡Lógica NO `!` : Si la _expresión_ es verdadera, entonces _! Expresión_ es falsa. Este operador invierte el valor de verdad y es un operador unario.
|
|
|
|
### 5\. Operadores ternarios:
|
|
|
|
El operador `?:` Es el operador ternario, o el _operador condicional_ , porque se puede utilizar para sustituir una instrucción `if else` , o incluso una instrucción `if else if` . La sintaxis:
|
|
|
|
|
|
`condition ? ValueIfTrue : ValueIfFalse` . Esto se expande a:
|
|
|
|
```cpp
|
|
if(condition)
|
|
ValueIfTrue;
|
|
else ValueIfFalse;
|
|
```
|
|
|
|
Llamar a `ValueIfTrue` un valor es un poco incorrecto, ya que no es necesario que sea un número. Algo como esto:
|
|
|
|
`condition ? FirstLevelTrueValue : ConditionIfFalse ? SecondLevelTrueValue : SecondLevelFalseValue` también funciona, y se interpreta como la siguiente instrucción `if else if` :
|
|
|
|
```cpp
|
|
if(condition)
|
|
FirstLevelTrueValue;
|
|
else if(ConditionIfFalse)
|
|
SecondLevelTrueValue;
|
|
else SecondLevelFalseValue;
|
|
```
|
|
|
|
Del mismo modo, anidado `if` declaraciones también se pueden hacer utilizando operadores ternarios.
|
|
|
|
_Camper, ahora sabes lo que son los tokens. El próximo artículo será sobre_ _FELICIDADES_
|
|
|
|
**Buena suerte a todos ustedes**
|
|
|
|
**¡Feliz codificación! :)**
|
|
|
|
**No dude en preguntar cualquier duda en la página de GitHub de [FreeCodeCamp](https://forum.freecodecamp.org/) o en [el foro de FreeCodeCamp.](https://forum.freecodecamp.org/)** |