Operaciones Matemáticas
Operadores aritméticos
En esta sección veremos los operadores aritméticos básicos que podemos encontrar en la mayoría de lenguajes.
| Nombre | Símbolo | Descripción |
|---|---|---|
| Agrupación | () |
Realiza la operación de agrupación de una operación. (NO MULTIPLICA) |
| Suma | + |
Realiza la operación de suma aritmética |
| Resta | - |
Realiza la operación de resta aritmética |
| Multiplicación | * |
Realiza la operación de multiplicación aritmética |
| División | / |
Realiza la operación de razón aritmética |
| Residuo o Módulo | % |
Realiza la operación de división aritmética y devuelve el residuo de ésta división |
Cuando somos nuevos en el mundo de la programación queremos aplicar conocimiento que tenemos con relación a matemáticas, aquí existen algunas cuestiones que no se aplican de la misma manera o solo se puede aplicar de cierta forma.
Precauciones que debemos tener en cuenta son:
- El único símbolo que podemos ocupar para la división es la diagonal o slash (/), no existe otro símbolo ni tampoco se puede ocupar los tradicionales que conocemos.
- El único símbolo para multiplicación es el asterisco (*), no existe algún otro ni ninguno más sirve para multiplicar.
- Los paréntesis "( )" solo agrupan y nada mas. No sirven para multiplicar.
#include <stdio.h>
int main(){
int valor1 = 4;
int valor2 = 3;
int suma = valor1 + valor2;
int resta = valor1 - valor2;
int multiplicacion = valor1 * valor2;
float division = valor1 / (float)valor2;
int modulo = valor1 % valor2;
printf("La suma es %i \n", suma);
printf("La resta es %i \n", resta);
printf("La multiplicación es %d \n", multiplicacion);
printf("La división es %f \n", division);
printf("El residuo es %i \n", modulo);
return 0;
}
Resultado:
La suma es 7
La resta es 1
La multiplicación es 12
La división es 1.333333
El residuo es 1
Operador unitario (-)
Existe el operador unitario el cual no necesita hacer una operación entre dos valores o variables, con agregarlo estaría realizando la operación de multiplicar por -1.
int valor = 4;
int inverso = -valor; // aquí aplicamos el operador unitario
printf("valor: %d\n", valor);
printf("valor negativo: %d\n", inverso);
Resultado:
valor: 4
valor negativo: -4
Operador de asignación (=)
El operador de asignación (=), el cual asigna un valor a una variable.
Danger
No es lo mismo asignar que igualar; es decir, en programación se guardar un dato en una dirección de memoria, e igualar se usa en matemáticas.
Precedencia de operadores
En C, la expresiones son normalmente evaluador de izquierda a derecha. Sin embargo, cuando una expresión contiene multiples operadores, la precedencia de decide el orden en el cual serán evaluados. Este orden es aplicable a otros muchos lenguajes como C++, C#, Java.
| Orden | Operador |
|---|---|
| 1 | (), [], ., -, >, x++, x-- |
| 2 | !, ~,++x,--x, (type) sizeof * & |
| 3 | *,/,% |
| 4 | +,- |
| 5 | <<,>> |
| 6 | <,<=,>, >= |
| 7 | ==,!= |
| 8 | & |
| 9 | ^ |
| 10 | | |
| 11 | && |
| 12 | || |
| 13 | = |
| 14 | , |
Nota
Con respecto a las operaciones matemáticas que conoces, sigue funcionando igual, ahora debes añadir las relacionadas al lenguaje.
Funciones matemáticas
El lenguaje C tiene de manera nativa una librería que nos facilita el calculo con funciones matemáticas. Para esto existe la librería math.h.
// la importación de la librería
#include <math.h>
De la funciones que nos pidiesen interesar son:
sqrt(x): Calculo de raíz cuadradapow(b,e): Calculo de potenciafabs(x): valor absolutoceil(x): redondeo hacia abajofloor(x): redondeo hacia arribacos(x): identidad trigonometríacoseno, en radianessin(x): identidad trigonometríaseno, en radianestan(x): identidad trigonometríatangente, en radianes
Tiene muchas otras mas.
#include <math.h>
#include <stdio.h>
int main()
{
int potencia = pow(2,3);
int raiz = sqrt(25);
int redondeoArriba = floor(25.3);
int redondeoAbajo = ceil(25.7);
float coseno = cos(45);
float seno = sin(45);
float tangente = tan(45);
printf("2 al cubo es: %d \n", potencia);
printf("la raiz de 25 es: %d \n", raiz);
printf("redondeo arriaba de 25.3 es: %d \n", redondeoArriba);
printf("redondeo abajo de 25.7 es: %d \n", redondeoAbajo);
printf("coseno de 45 es: %.2f \n", coseno);
printf("seno de 45 es: %.2f \n", seno);
printf("tangente de 45 es: %.2f \n", tangente);
return 0;
}
Ejemplos con operadores aritméticos
- Calcular el área de un cuadrado. Imprimir calcular el perímetro y área. Los datos están en memoria.
#include <stdio.h>
int main(void){
float side = 4.31;
printf("CALCULADORA DEL CUADRADO\n");
printf("El valor del lado es %f\n", side);
float perimetro = side * 4;
printf("El perimetro es %f u\n", perimetro);
float area = side * side;
printf("El area es %f u2\n", area);
return 0;
}
Ejercicios con operadores aritméticos
- calculadora del circulo. Imprimir calcular el perímetro y área. Los datos están en memoria.
- calculadora del rectángulo. Imprimir calcular el perímetro y área. Los datos están en memoria.
- calculadora del triangulo. Imprimir calcular el perímetro y área. Los datos están en memoria.
Operador de incremento y decremento
El Operador de incremento y decremento son operadores unarios que agregan o sustraen uno de sus operandos, respectivamente. Es normal tener 2 versiones (pre- y post-) de cada operador con semántica ligeramente diferente. El operador de incremento es escrito como ++ y el de decremento como --.
en progreso