Ejemplos prácticos de código
Operaciones matemáticas básicas
Funciones trigonométricas
#include <stdio.h>
#include <math.h>
int main() {
double angle = M_PI / 4; // 45 degrees
printf("sin(45°): %f\n", sin(angle));
printf("cos(45°): %f\n", cos(angle));
return 0;
}
Escenarios de cálculo avanzados
Cálculos exponenciales y logarítmicos
#include <stdio.h>
#include <math.h>
int main() {
double base = 2.0;
double exponent = 3.0;
printf("Power calculation: %.2f\n", pow(base, exponent));
printf("Natural logarithm: %.2f\n", log(base));
printf("Base 10 logarithm: %.2f\n", log10(base));
return 0;
}
Redondeo y valor absoluto
Manipulación de precisión
#include <stdio.h>
#include <math.h>
int main() {
double numbers[] = {-3.7, 2.3, 4.5, -1.2};
for (int i = 0; i < 4; i++) {
printf("Original: %.2f\n", numbers[i]);
printf("Ceiling: %.2f\n", ceil(numbers[i]));
printf("Floor: %.2f\n", floor(numbers[i]));
printf("Absolute: %.2f\n\n", fabs(numbers[i]));
}
return 0;
}
Categorías de funciones matemáticas
Categoría |
Funciones |
Propósito |
Trigonométrica |
sin(), cos(), tan() |
Cálculos de ángulos |
Exponencial |
exp(), log(), pow() |
Operaciones exponenciales |
Redondeo |
ceil(), floor(), round() |
Precisión de números |
Comparación |
fmax(), fmin() |
Comparaciones numéricas |
Escenarios matemáticos complejos
Cálculos estadísticos
#include <stdio.h>
#include <math.h>
double calculate_standard_deviation(double data[], int size) {
double sum = 0.0, mean, variance = 0.0;
// Calculate mean
for (int i = 0; i < size; i++) {
sum += data[i];
}
mean = sum / size;
// Calculate variance
for (int i = 0; i < size; i++) {
variance += pow(data[i] - mean, 2);
}
variance /= size;
return sqrt(variance);
}
int main() {
double data[] = {2, 4, 4, 4, 5, 5, 7, 9};
int size = sizeof(data) / sizeof(data[0]);
printf("Standard Deviation: %.2f\n",
calculate_standard_deviation(data, size));
return 0;
}
Flujo de trabajo de compilación
graph LR
A[Source Code] --> B[Compile with -lm]
B --> C[Link Math Library]
C --> D[Executable Program]
Consejo de aprendizaje de LabEx
Al practicar estos ejemplos, LabEx recomienda experimentar con diferentes valores de entrada y comprender cómo se comportan las funciones matemáticas.
Consideraciones para el manejo de errores
- Compruebe los valores de retorno de las funciones matemáticas
- Maneje los posibles errores de dominio y rango
- Utilice
isnan()
e isinf()
para la detección de valores especiales