Presentación En este artículo reviso 10 mini programas de Java sencillos pero muy útiles para afinar la lógica de programación y entender conceptos clave más allá de escribir código. Cada ejemplo viene con una breve explicación para que puedas practicar y entender por qué funciona.
1 Reverse a String forma manual Código ejemplo: public class ReverseString { public static void main(String[] args) { String str = /* Java */; StringBuilder reversed = new StringBuilder(); for (int i = str.length() - 1; i >= 0; i--) { reversed.append(str.charAt(i)); } System.out.println(reversed.toString()); // Output esperado: avaJ } } Explicación: Recorre la cadena desde el final hacia el inicio y construye la invertida. Refuerza bucles, índice de cadenas y uso de StringBuilder.
2 Comprobar si un número es primo Código ejemplo: public class PrimeCheck { public static void main(String[] args) { int num = 29, count = 0; for (int i = 1; i <= num; i++) { if (num % i == 0) count++; } System.out.println(count == 2); // true si es primo } } Explicación: Un primo tiene exactamente dos divisores. Refuerza bucles y lógica condicional.
3 Serie de Fibonacci Código ejemplo: public class Fibonacci { public static void main(String[] args) { int n = 10, a = 0, b = 1; for (int i = 0; i < n; i++) { System.out.println(a); int sum = a + b; a = b; b = sum; } } } Explicación: Genera los primeros n términos de Fibonacci. Refuerza iteración y actualización de variables.
4 Factorial de un número Código ejemplo: public class Factorial { public static void main(String[] args) { int n = 5, fact = 1; for (int i = 1; i <= n; i++) { fact *= i; } System.out.println(fact); // 120 } } Explicación: Multiplica los enteros de 1 a n. Refuerza acumuladores y bucles.
5 Comprobar palíndromo Código ejemplo: public class Palindrome { public static void main(String[] args) { String str = /* level */; String reversed = new StringBuilder(str).reverse().toString(); System.out.println(str.equals(reversed)); // true si es palíndromo } } Explicación: Verifica si la cadena leída hacia delante coincide con la invertida. Refuerza comparación de cadenas y manipulación con StringBuilder.
6 Suma de dígitos Código ejemplo: public class DigitSum { public static void main(String[] args) { int num = 1234, sum = 0; while (num > 0) { sum += num % 10; num /= 10; } System.out.println(sum); // 10 } } Explicación: Extrae dígitos con operador módulo y división. Refuerza bucles y aritmética modular.
7 Encontrar el elemento mayor en un array Código ejemplo: public class LargestInArray { public static void main(String[] args) { int[] arr = {2, 9, 5, 1, 7}; int max = arr[0]; for (int n : arr) { if (n > max) max = n; } System.out.println(max); } } Explicación: Recorre el array para encontrar el máximo. Refuerza arrays y enhanced for.
8 Contar vocales en una cadena Código ejemplo: public class VowelCount { public static void main(String[] args) { String str = /* Hello Java */; int count = 0; for (char c : str.toLowerCase().toCharArray()) { int ci = c; if (ci == 97 || ci == 101 || ci == 105 || ci == 111 || ci == 117) count++; } System.out.println(count); // por ejemplo 4 } } Explicación: Convierte caracteres a su código ASCII para comparar sin literales. Refuerza iteración de caracteres y operaciones con enteros.
9 Juego de adivinar número simple Código ejemplo: import java.util.*; public class GuessGame { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int number = new Random().nextInt(10) + 1; int guess = sc.nextInt(); System.out.println(guess == number); // true si acertó } } Explicación: Generación aleatoria y entrada de usuario. Refuerza uso de Scanner, Random y condicionales.
10 Suma de matrices Código ejemplo: public class MatrixAddition { public static void main(String[] args) { int[][] a = {{1,2},{3,4}}; int[][] b = {{5,6},{7,8}}; int[][] sum = new int[2][2]; for (int i = 0; i < 2; i++) { for (int j = 0; j < 2; j++) { sum[i][j] = a[i][j] + b[i][j]; } } for (int[] row : sum) { for (int val : row) System.out.print(val + 32); System.out.println(); } } } Explicación: Suma elemento a elemento dos matrices 2 por 2. Refuerza bucles anidados y arrays multidimensionales.
Qué cubren estos ejemplos Juntos estos mini programas practican conceptos centrales como bucles y condicionales, arrays y cadenas, aritmética modular, generación aleatoria y entrada de usuario. Son pequeños ejercicios ideales para mejorar el pensamiento algorítmico.
Sobre Q2BSTUDIO y cómo te podemos ayudar En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones empresariales que incluyen inteligencia artificial, ciberseguridad y servicios cloud aws y azure. Si buscas construir aplicaciones a medida o software a medida adaptado a tus procesos, conoce nuestro enfoque en desarrollo de aplicaciones multiplataforma. Para proyectos que integren modelos de ia para empresas, agentes IA o automatizaciones avanzadas podemos acompañarte desde la consultoría hasta la puesta en producción; descubre nuestros servicios de inteligencia artificial.
Palabras clave relevantes aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.
Práctica recomendada y siguientes pasos Practica cada ejemplo modificando entradas y ampliándolos a métodos reutilizables o clases. Si quieres, puedo desarrollar cualquiera de estos programas en profundidad, añadir tests, explicar la complejidad temporal o convertirlos en ejercicios con soluciones paso a paso. ¿Cuál quieres que desarrolle primero o qué aspecto de Java te interesa practicar más?