La programación modular y el uso de funciones son fundamentales para escribir código limpio, reutilizable y fácil de mantener. A continuación, te presento una serie de ejercicios que te ayudarán a mejorar tus habilidades en estos aspectos esenciales de Java.
Ejercicio 1: Calculadora Modular
Crea una calculadora modular que realice las operaciones básicas (suma, resta, multiplicación y división) utilizando funciones separadas para cada operación.
import java.util.Scanner;
public class CalculadoraModular {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Ingrese el primer número: ");
double num1 = scanner.nextDouble();
System.out.print("Ingrese el segundo número: ");
double num2 = scanner.nextDouble();
System.out.println("Seleccione la operación: (+, -, *, /)");
char operacion = scanner.next().charAt(0);
double resultado = 0;
switch (operacion) {
case '+':
resultado = sumar(num1, num2);
break;
case '-':
resultado = restar(num1, num2);
break;
case '*':
resultado = multiplicar(num1, num2);
break;
case '/':
if (num2 != 0) {
resultado = dividir(num1, num2);
} else {
System.out.println("Error: División por cero.");
scanner.close();
return;
}
break;
default:
System.out.println("Operación no válida.");
scanner.close();
return;
}
System.out.println("El resultado de la operación es: " + resultado);
scanner.close();
}
public static double sumar(double a, double b) {
return a + b;
}
public static double restar(double a, double b) {
return a - b;
}
public static double multiplicar(double a, double b) {
return a * b;
}
public static double dividir(double a, double b) {
return a / b;
}
}
Ejercicio 2: Conversión de Temperaturas
Escribe un programa modular que convierta temperaturas entre Celsius y Fahrenheit. Crea funciones separadas para cada conversión.
import java.util.Scanner;
public class ConversionTemperaturas {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Ingrese la temperatura: ");
double temperatura = scanner.nextDouble();
System.out.println("Seleccione la conversión: (1: Celsius a Fahrenheit, 2: Fahrenheit a Celsius)");
int opcion = scanner.nextInt();
double resultado = 0;
switch (opcion) {
case 1:
resultado = celsiusAFahrenheit(temperatura);
break;
case 2:
resultado = fahrenheitACelsius(temperatura);
break;
default:
System.out.println("Opción no válida.");
scanner.close();
return;
}
System.out.println("La temperatura convertida es: " + resultado);
scanner.close();
}
public static double celsiusAFahrenheit(double celsius) {
return (celsius * 9/5) + 32;
}
public static double fahrenheitACelsius(double fahrenheit) {
return (fahrenheit - 32) * 5/9;
}
}
Ejercicio 3: Verificación de Palíndromos
Escribe una función que verifique si una cadena de texto es un palíndromo. Un palíndromo es una palabra o frase que se lee igual hacia adelante y hacia atrás.
import java.util.Scanner;
public class VerificacionPalindromo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Ingrese una cadena de texto: ");
String texto = scanner.nextLine();
if (esPalindromo(texto)) {
System.out.println("La cadena es un palíndromo.");
} else {
System.out.println("La cadena no es un palíndromo.");
}
scanner.close();
}
public static boolean esPalindromo(String texto) {
String textoLimpio = texto.replaceAll("\\s+", "").toLowerCase();
String textoReverso = new StringBuilder(textoLimpio).reverse().toString();
return textoLimpio.equals(textoReverso);
}
}
Ejercicio 4: Calculadora de Potencia y Raíz
Crea una calculadora modular que incluya funciones para calcular la potencia y la raíz cuadrada de un número.
import java.util.Scanner;
public class CalculadoraPotenciaRaiz {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Ingrese un número: ");
double num = scanner.nextDouble();
System.out.println("Seleccione la operación: (1: Potencia, 2: Raíz Cuadrada)");
int opcion = scanner.nextInt();
double resultado = 0;
switch (opcion) {
case 1:
System.out.print("Ingrese el exponente: ");
double exponente = scanner.nextDouble();
resultado = potencia(num, exponente);
break;
case 2:
resultado = raizCuadrada(num);
break;
default:
System.out.println("Opción no válida.");
scanner.close();
return;
}
System.out.println("El resultado de la operación es: " + resultado);
scanner.close();
}
public static double potencia(double base, double exponente) {
return Math.pow(base, exponente);
}
public static double raizCuadrada(double numero) {
return Math.sqrt(numero);
}
}
Ejercicio 5: Promedio de una Lista de Números
Escribe un programa modular que calcule el promedio de una lista de números ingresados por el usuario. Crea una función para calcular el promedio.
import java.util.Scanner;
public class PromedioLista {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Ingrese la cantidad de números: ");
int n = scanner.nextInt();
double[] numeros = new double[n];
System.out.println("Ingrese los números:");
for (int i = 0; i < n; i++) {
numeros[i] = scanner.nextDouble();
}
double promedio = calcularPromedio(numeros);
System.out.println("El promedio de los números es: " + promedio);
scanner.close();
}
public static double calcularPromedio(double[] numeros) {
double suma = 0;
for (double num : numeros) {
suma += num;
}
return suma / numeros.length;
}
}
Conclusión
Estos ejercicios te proporcionarán una base sólida para trabajar con programación modular y funciones en Java. Practicar estos conceptos es esencial para desarrollar tus habilidades de programación y te permitirá abordar problemas más complejos en el futuro. ¡Sigue practicando y explorando más sobre Java para convertirte en un programador más competente!
¿QUÉ TE HA PARECIDO EL ARTÍCULO? Danos tu opinión al final de la página.
Deja tu comentario y ayúdanos a crecer.
¡SÍGUENOS EN TUS REDES FAVORITAS!
AYUDANOS A CRECER Y QUE LLEGUEMOS A TODAS LAS PERSONAS QUE NOS NECESITANA. SÍGUENOS EN TUS REDES.
Entra AQUÍ y elíge donde seguirnos.

NUESTRAS ÚLTIMAS PUBLICACIONES
- Las maravillas de las ciencias biológicas según la Academia SanRoque
- La motivación en Academia SanRoque
- Los docentes también se divierten.
- Comandos Principales en MongoDB y sus Equivalentes en Java
- Las bondades de escribir y leer cada día: herramientas esenciales para la vida académica, empresarial y social
- Immanuel Kant: Disertación contra las IA
- Forma Normal de Boyce-Codd (FNBC) en Bases de Datos
- Las Formas Normales en Bases de Datos
- La importancia de rodearte de personas virtuosas para alcanzar tus metas
ELIGE TU RED FAVORITA Y SÍGUENOS.
AYUDANOS A CRECER Y A LLEGAR A TODAS LAS PERSONAS QUE NOS NECESITAN.
Contenido restringido
Comments are closed