SHOW:
|
|
- or go back to the newest paste.
1 | import java.util.*; | |
2 | public class Tp2Ej1 { | |
3 | public static void main(String[] args) { | |
4 | Scanner entrada = new Scanner(System.in); | |
5 | Stack<String> pila = new Stack <> (); | |
6 | int opcion=0; | |
7 | while(opcion!=3){ | |
8 | opcion=Helper.validarNumero(entrada, "'opcion' \n1-Manual \n2-Random \n3-salir"); | |
9 | switch(opcion){ | |
10 | case 1: | |
11 | cargarPila(entrada,pila); | |
12 | System.out.println(pila); | |
13 | eliminarElementoPila(entrada, pila); | |
14 | System.out.println(pila); | |
15 | break; | |
16 | case 2: | |
17 | cargarRandom(entrada, pila); | |
18 | System.out.println(pila); | |
19 | eliminarElementoPila(entrada, pila); | |
20 | System.out.println(pila); | |
21 | break; | |
22 | } | |
23 | } | |
24 | } | |
25 | public static void cargarPila(Scanner entrada,Stack <String> pila){ | |
26 | String vector; | |
27 | String continuar ="s"; | |
28 | while (continuar.equalsIgnoreCase("s")){ | |
29 | vector = cargarLetra(entrada, "Ingresar Un Caracter"); | |
30 | pila.push(vector); | |
31 | System.out.println("Seguir Cargando Caracteres? [s/n]"); | |
32 | continuar=entrada.nextLine(); | |
33 | } | |
34 | ||
35 | } | |
36 | ||
37 | public static void eliminarElementoPila(Scanner entrada, Stack <String> pila){ | |
38 | String vector; | |
39 | String continuar ="s"; | |
40 | int total=0; | |
41 | while (continuar.equalsIgnoreCase("s")){ | |
42 | vector = cargarLetra(entrada, "Ingresar Un Caracter a Eliminar"); | |
43 | total+=pila.eliminarElemento(vector); | |
44 | System.out.println("Seguir Eliminando Caracteres? [s/n]"); | |
45 | continuar=entrada.nextLine(); | |
46 | } | |
47 | System.out.println( "Elementos Eliminados "+total); | |
48 | } | |
49 | ||
50 | //validar que se ingrese solamente letras primera parte | |
51 | public static String cargarLetra(Scanner entrada,String mensaje){ | |
52 | System.out.println(mensaje); | |
53 | String linea=entrada.nextLine(); | |
54 | while(validarLetras(linea)||linea.length()<=0){ | |
55 | System.out.println("''ERROR'' No Ingresar Numeros o mas de un caracter"); | |
56 | System.out.println(mensaje); | |
57 | linea=entrada.nextLine(); | |
58 | } | |
59 | return linea; | |
60 | } | |
61 | //validar que se ingrese solamente letras segunda parte | |
62 | public static boolean validarLetras(String linea) { | |
63 | for (int x = 0; x < linea.length(); x++) { | |
64 | char c = linea.charAt(x); | |
65 | if (!((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || c == ' ')) { | |
66 | return true; | |
67 | } | |
68 | } | |
69 | return false; | |
70 | } | |
71 | public static String caracterRandom() { | |
72 | Random random = new Random(); | |
73 | char caracterRandom = (char)(random.nextInt(26) + 'a'); | |
74 | System.out.println("Caracter generado: "+ caracterRandom); | |
75 | String caracter = String.valueOf(caracterRandom); | |
76 | return caracter; | |
77 | } | |
78 | public static void cargarRandom(Scanner entrada,Stack <String> pila){ | |
79 | String vector; | |
80 | String continuar ="s"; | |
81 | while (continuar.equalsIgnoreCase("s")){ | |
82 | vector = caracterRandom(); | |
83 | pila.push(vector); | |
84 | System.out.println("Seguir Cargando Caracteres? [s/n]"); | |
85 | continuar=entrada.nextLine(); | |
86 | } | |
87 | ||
88 | } | |
89 | } | |
90 |