Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Random;
- import java.util.Scanner;
- import tp0.Helper;
- public class Tp2Ejercicio1 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- int opcion;
- Stack<Character> miPila = new Stack<Character>();
- System.out.println("Ejercicio 1 Tp 2");
- System.out.println("Vamos a crear una pila de caracteres y reemplazar valores en la pila");
- do {
- opcion = menu();
- switch (opcion) {
- case 1:
- while(miPila.empty()) {
- miPila = manual();
- }
- System.out.println("Su pila ingresada es:");
- System.out.println(miPila);
- int num = miPila.reemplazarValor(Helper.getCharacter("Que valor desea cambiar?"),Helper.getCharacter("Por cual?"));
- System.out.println("La pila ahora es:");
- System.out.println(miPila);
- System.out.println("Cantidad de cambios realizados: "+num);
- System.out.println();
- break;
- case 2:
- miPila = aleatorio();
- System.out.println("La pila generada es:");
- System.out.println(miPila);
- num = miPila.reemplazarValor(Helper.getCharacter("Que valor desea cambiar?"),Helper.getCharacter("Por cual?"));
- System.out.println("La pila ahora es:");
- System.out.println(miPila);
- System.out.println("Cantidad de cambios realizados: "+num);
- System.out.println();
- break;
- case 3:
- System.out.println("Programa Terminado");
- break;
- default:
- System.out.println("No es una opción correcta ");
- break;
- }
- }while(opcion!=3);
- }
- public static int menu() {
- int op;
- System.out.println("Desea ingresar los valores de la pila o generarlos aleatoriamente?");
- System.out.println("1.Ingresar manualmente");
- System.out.println("2.Aleatorio");
- System.out.println("3.Salir");
- op = Helper.getPositiveInt("Ingrese una opcion");
- return op;
- }
- public static Stack<Character> manual() {
- Scanner sc = new Scanner(System.in);
- Stack<Character> pila = new Stack<Character>();
- System.out.println("Ingrese los caracteres de la pila en la siguiente línea (sin espacios) ");
- String cadena = sc.nextLine();
- if(cadena.isEmpty()) {
- System.out.println("No ha ingresado ningun valor");
- System.out.println("Presione enter para continuar...");
- cadena = sc.nextLine();
- }else {
- for(int i=0;i<cadena.length();i++) {
- pila.push(cadena.charAt(i));
- }
- }
- return pila;
- }
- public static Stack<Character> aleatorio() {
- Stack<Character> pila = new Stack<Character>();
- Random ran = new Random();
- int n = Helper.getPositiveInt("Ingrese el tamaño de la pila aleatoria");
- for(int i=0;i<n;i++) {
- int aux = ran.nextInt(25)+97;
- pila.push((char)aux);
- }
- return pila;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement