Advertisement
RAUL-SUAREZ

tp2 eje 1

Oct 25th, 2021
609
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement