Introducción
En este laboratorio, aprenderás cómo trabajar con aritmética de punto flotante en C. Comenzarás declarando variables de tipo float y double, luego realizarás varias operaciones aritméticas con ellas y, finalmente, imprimirás los resultados con la precisión adecuada. El laboratorio cubre las habilidades esenciales para trabajar con números decimales y realizar cálculos matemáticos precisos en la programación en C.
El primer paso demuestra cómo declarar variables de punto flotante utilizando los tipos de datos float y double, y cómo imprimir los valores con la precisión deseada. El segundo paso se centra en realizar operaciones aritméticas, como suma, resta, multiplicación y división, con números de punto flotante.
Declarar variables de tipo float o double
En este paso, aprenderás cómo declarar variables de punto flotante en C utilizando los tipos de datos float y double. Las variables de punto flotante son esenciales para almacenar números decimales y realizar cálculos matemáticos precisos.
Primero, creemos un nuevo archivo C para demostrar las declaraciones de variables:
cd ~/project
nano floating_variables.c
Ahora, agrega el siguiente código al archivo:
#include <stdio.h>
int main() {
// Declaring float variables
float temperature = 98.6;
float price = 19.99;
// Declaring double variables
double pi = 3.14159265359;
double large_number = 1234567890.123456789;
// Printing the variables
printf("Temperature (float): %.2f\n", temperature);
printf("Price (float): %.2f\n", price);
printf("Pi (double): %.5f\n", pi);
printf("Large Number (double): %.9f\n", large_number);
return 0;
}
Compila y ejecuta el programa:
gcc floating_variables.c -o floating_variables
./floating_variables
Ejemplo de salida:
Temperature (float): 98.60
Price (float): 19.99
Pi (double): 3.14159
Large Number (double): 1234567890.123456789
Analicemos el código:
floatse utiliza para números de punto flotante de precisión simple (por lo general, 4 bytes)doublese utiliza para números de punto flotante de doble precisión (por lo general, 8 bytes)- Los especificadores de formato
%.2fy%.5fcontrolan la precisión de los decimales al imprimir
Realizar operaciones aritméticas con valores de punto flotante
En este paso, aprenderás cómo realizar varias operaciones aritméticas con números de punto flotante en C, incluyendo suma, resta, multiplicación y división.
Modifiquemos el archivo anterior para demostrar la aritmética de punto flotante:
cd ~/project
nano floating_arithmetic.c
Agrega el siguiente código al archivo:
#include <stdio.h>
int main() {
// Declare floating-point variables
float a = 10.5;
float b = 3.2;
// Addition
float sum = a + b;
printf("Addition: %.2f + %.2f = %.2f\n", a, b, sum);
// Subtraction
float difference = a - b;
printf("Subtraction: %.2f - %.2f = %.2f\n", a, b, difference);
// Multiplication
float product = a * b;
printf("Multiplication: %.2f * %.2f = %.2f\n", a, b, product);
// Division
float quotient = a / b;
printf("Division: %.2f / %.2f = %.2f\n", a, b, quotient);
// Mixed arithmetic operations
float mixed_calc = (a + b) * (a - b) / b;
printf("Mixed Calculation: (%.2f + %.2f) * (%.2f - %.2f) / %.2f = %.2f\n",
a, b, a, b, b, mixed_calc);
return 0;
}
Compila y ejecuta el programa:
gcc floating_arithmetic.c -o floating_arithmetic
./floating_arithmetic
Ejemplo de salida:
Addition: 10.50 + 3.20 = 13.70
Subtraction: 10.50 - 3.20 = 7.30
Multiplication: 10.50 * 3.20 = 33.60
Division: 10.50 / 3.20 = 3.28
Mixed Calculation: (10.50 + 3.20) * (10.50 - 3.20) / 3.20 = 24.41
Puntos clave sobre la aritmética de punto flotante:
- Utiliza el especificador de formato
%.2fpara controlar la precisión decimal - Las operaciones de punto flotante siguen las reglas matemáticas estándar
- Ten en cuenta las posibles limitaciones de precisión en los cálculos de punto flotante
Imprimir resultados con la precisión adecuada
En este paso, aprenderás cómo controlar la precisión de la salida de números de punto flotante utilizando especificadores de formato en C.
Crea un nuevo archivo para explorar diferentes formatos de precisión:
cd ~/project
nano floating_precision.c
Agrega el siguiente código al archivo:
#include <stdio.h>
int main() {
// Declare floating-point variables
double pi = 3.14159265358979323846;
double large_number = 1234567.89012345;
// Default printing (limited precision)
printf("Default printing:\n");
printf("Pi: %f\n", pi);
printf("Large Number: %f\n\n", large_number);
// Controlling decimal places
printf("Controlled Precision:\n");
printf("Pi with 2 decimal places: %.2f\n", pi);
printf("Pi with 5 decimal places: %.5f\n", pi);
printf("Pi with 10 decimal places: %.10f\n\n", pi);
// Scientific notation
printf("Scientific Notation:\n");
printf("Large Number (default): %e\n", large_number);
printf("Large Number (3 decimal places): %.3e\n\n", large_number);
// Width and precision combined
printf("Width and Precision:\n");
printf("Pi (width 10, 4 decimal places): %10.4f\n", pi);
printf("Large Number (width 15, 2 decimal places): %15.2f\n", large_number);
return 0;
}
Compila y ejecuta el programa:
gcc floating_precision.c -o floating_precision
./floating_precision
Ejemplo de salida:
Default printing:
Pi: 3.141593
Large Number: 1234567.890123
Controlled Precision:
Pi with 2 decimal places: 3.14
Pi with 5 decimal places: 3.14159
Pi with 10 decimal places: 3.1415926536
Scientific Notation:
Large Number (default): 1.234568e+06
Large Number (3 decimal places): 1.235e+06
Width and Precision:
Pi (width 10, 4 decimal places): 3.1416
Large Number (width 15, 2 decimal places): 1234567.89
Puntos clave sobre el formato de precisión:
%fes el especificador de formato predeterminado para números de punto flotante.2fsignifica 2 decimales,.5fsignifica 5 decimales%eo%Emuestra notación científica- Los especificadores de ancho ayudan a alinear y dar formato a la salida
Resumen
En este laboratorio, aprendiste cómo declarar variables de punto flotante utilizando los tipos de datos float y double, y cómo realizar operaciones aritméticas con estos valores, incluyendo suma, resta, multiplicación y división. También aprendiste cómo controlar la precisión de los decimales al imprimir números de punto flotante utilizando especificadores de formato. Estas habilidades son esenciales para trabajar con datos decimales y realizar cálculos matemáticos precisos en la programación en C.



