Programas en C para cálculos matemáticos
Programas en C para cálculos matemáticos
El programa solicita al usuario que introduzca un carácter. A continuación, utiliza la función getche() para capturar este carácter directamente desde el teclado, lo cual permite su lectura y almacenamiento. Luego, usando printf, muestra el carácter y su código ASCII en formato decimal (%d) y hexadecimal (%x).
Para determinar si un punto dado pertenece a una circunferencia de radio 10 con centro en el origen, el programa calculado verifica la condición matemática x² + y² = 100. Si esta igualdad se cumple, el punto está sobre la circunferencia. El programa solicita las coordenadas x e y del punto, luego selecciona la opción correspondiente en un menú y realiza la comprobación .
El programa calcula x² + y² y lo compara con el cuadrado del radio de la circunferencia (100). Si ambos son iguales, asegura que el punto pertenece exactamente a la circunferencia. Sin embargo, debido a la naturaleza de los números flotantes, la exactitud puede depender de los valores específicos de x e y introducidos, especialmente en los bordes del círculo .
Si se introduce un valor negativo para la resistencia, el programa muestra un mensaje que indica 'La resistencia introducida es negativa'. Esta verificación se realiza para asegurar que el valor de la resistencia está dentro del rango permitido, que es mayor a 0 y menor a 1000 ohmios .
Cuando el discriminante de la ecuación cuadrática (b² - 4ac) es negativo, el programa determina que las raíces son complejas. Calcula la parte real como r1 = -b/(2a) y la parte imaginaria como i1 = sqrt(4ac - b²)/(2a), mostrando estas partes como componentes de raíces complejas separadamente .
Para identificar el cuadrante de un punto, el programa evalúa las coordenadas x e y. Si x>0 e y>0, el punto está en el primer cuadrante; si x<0 e y>0, se encuentra en el segundo cuadrante; si x<0 e y<0, en el tercer cuadrante; y si x>0 e y<0, está en el cuarto cuadrante. El programa utiliza sentencias condicionales para realizar estas verificaciones .
El uso de 'else' después de verificar que el discriminante es negativo (para comprobar si es no-negativo) permite una estructura controlada que previene cálculos innecesarios si el discriminante ya fue evaluado como negativo. Esto mejora la legibilidad y evita el sobreproceso, optimizando el flujo del programa al calcular sólo si es necesario .
El programa primero verifica si el coeficiente a de la variable de segundo grado es cero. Si es cero, supone que la ecuación es de primer grado, calculando la solución como -c/b. Esto evita un error de división por cero al calcular las raíces de una supuesta ecuación cuadrática si a es cero .
El programa convierte coordenadas cartesianas (x, y) a polares calculando primero el radio (r) usando la fórmula r = sqrt(x² + y²) y luego el argumento (arg) usando la función atan(y/x). Este argumento se convierte de radianes a grados multiplicando por 180/pi para su impresión .
El programa limita el valor de la resistencia a un rango entre 0 y 1000 ohmios. Si la resistencia es menor o igual a 0, se indica que la resistencia es negativa; si es mayor a 1000, se informa que es demasiado grande. Esto asegura que se eviten errores al calcular la caída de potencial .