Programas en Java - BlueJ
Fila 1
1. Detectar si una cadena es un número entero y si es par o impar
import java.util.Scanner;
public class NumeroEnteroParImpar {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Introduce una cadena: ");
String entrada = sc.nextLine();
try {
int numero = Integer.parseInt(entrada);
if (numero % 2 == 0) {
System.out.println("Es un número entero PAR.");
} else {
System.out.println("Es un número entero IMPAR.");
}
} catch (NumberFormatException e) {
System.out.println("No es un número entero.");
}
}
}
2. Detectar si una palabra es un palíndromo
import java.util.Scanner;
public class Palindromo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Introduce una palabra: ");
String palabra = sc.nextLine().toLowerCase();
String invertida = new StringBuilder(palabra).reverse().toString();
if (palabra.equals(invertida)) {
System.out.println("Es un palíndromo.");
} else {
System.out.println("No es un palíndromo.");
}
}
}
Fila 2
1. Contar el número de sílabas de una palabra (aproximación contando vocales)
import java.util.Scanner;
public class ContarSilabas {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Introduce una palabra: ");
String palabra = sc.nextLine().toLowerCase();
int contador = 0;
for (int i = 0; i < palabra.length(); i++) {
char c = palabra.charAt(i);
if ("aeiouáéíóú".indexOf(c) != -1) {
contador++;
}
}
System.out.println("Número aproximado de sílabas: " + contador);
}
}
2. Detectar números en un texto, guardarlos en una lista y calcular la suma
import java.util.Scanner;
import java.util.ArrayList;
import java.util.regex.*;
public class NumerosEnTexto {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Introduce un texto: ");
String texto = sc.nextLine();
ArrayList<Integer> numeros = new ArrayList<>();
int suma = 0;
Pattern p = Pattern.compile("\\d+");
Matcher m = p.matcher(texto);
while (m.find()) {
int numero = Integer.parseInt(m.group());
numeros.add(numero);
suma += numero;
}
System.out.println("Números encontrados: " + numeros);
System.out.println("Suma total: " + suma);
}
}
Programa adicional: Detectar si un número de teléfono es fijo o móvil
import java.util.Scanner;
public class TipoTelefono {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Introduce un número de teléfono: ");
String telefono = sc.nextLine();
if (telefono.length() < 1) {
System.out.println("Número inválido.");
return;
}
char prefijo = telefono.charAt(0);
if (prefijo == '2') {
System.out.println("Teléfono FIJO de La Paz, Oruro o Potosí.");
} else if (prefijo == '3') {
System.out.println("Teléfono FIJO de Pando, Beni o Santa Cruz.");
} else if (prefijo == '4') {
System.out.println("Teléfono FIJO de Cochabamba, Chuquisaca o Tarija.");
} else if (prefijo == '6' || prefijo == '7') {
System.out.println("Teléfono MÓVIL.");
} else {
System.out.println("Prefijo desconocido.");
}
}
}