Advertisement
Jurado001

TP03ej3_Principal

Sep 29th, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.80 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class principal {
  4.  
  5.     public static void main(String[] args) {
  6.         int total=0,opc;
  7.         Scanner S = new Scanner(System.in);
  8.        
  9.         System.out.print("Tamaño de la cola 1: ");
  10.         int N = S.nextInt();
  11.         Cola C1 = new Cola(N);
  12.         total+=N;
  13.        
  14.         System.out.print("Tamaño de la cola 2: ");
  15.         N = S.nextInt();
  16.         Cola C2 = new Cola(N);
  17.         total+=N;
  18.        
  19.         EncolarAleatorio(C1,C2);
  20.         Mostrar(C1,C2);
  21.        
  22.         do {
  23.             System.out.println();
  24.             Menu();
  25.             opc = S.nextInt();
  26.             System.out.println();
  27.             switch (opc) {
  28.             case 1:
  29.                 EncolarManual(C1,C2);
  30.                 break;
  31.             case 2:
  32.                 Desencolar(C1,C2);
  33.                 break;
  34.             case 3:
  35.                 Cola ColaNueva = new Cola(total);
  36.                 EncolarNueva(C1,C2,ColaNueva);
  37.                 break;
  38.             case 4:
  39.                 System.out.println("PROGRAMA FINALIZADO...");
  40.                 break;
  41.             default:
  42.                 System.out.println("Opcion no valida...");
  43.             }
  44.         }while(opc != 4);
  45.        
  46.     }
  47.    
  48.     public static void Menu() {
  49.         System.out.println("********** MENU PRINCIPAL **********");
  50.         System.out.println("1) Encolar");
  51.         System.out.println("2) Desencolar");
  52.         System.out.println("3) Encolar sucesiva y alternadamente un elemento de cada cola y en una nueva");
  53.         System.out.println("4) Salir");
  54.         System.out.println();
  55.         System.out.print("Opcion: ");
  56.     }
  57.    
  58.     public static void EncolarAleatorio(Cola C1,Cola C2) {
  59.         while(!C1.EstaLlena()) {
  60.             int Aux = (int)(Math.random()*(100-(-100))+(-100));
  61.             C1.Encolar(Aux);
  62.         }
  63.        
  64.         while(!C2.EstaLlena()) {
  65.             int Aux = (int)(Math.random()*(100-(-100))+(-100));
  66.             C2.Encolar(Aux);
  67.         }
  68.     }
  69.    
  70.     public static void Mostrar(Cola C1, Cola C2) {
  71.         System.out.println("Colas generadas aleatoriamente...");
  72.         System.out.print("Cola 1: ");
  73.         C1.Mostrar();
  74.         System.out.println();
  75.         System.out.print("Cola 2: ");
  76.         C2.Mostrar();
  77.         System.out.println();
  78.     }
  79.    
  80.     public static void EncolarManual(Cola C1, Cola C2) {
  81.         int opc;
  82.         Scanner I = new Scanner(System.in);
  83.         do {
  84.             System.out.println("-> Encolar");
  85.             System.out.println("1) Encolar en la cola 1");
  86.             System.out.println("2) Encolar en la cola 2");
  87.             System.out.println("3) Salir");
  88.             System.out.print("Opcion:");
  89.             opc = I.nextInt();
  90.             System.out.println();
  91.             switch (opc) {
  92.             case 1:
  93.                 EManual(C1);
  94.                 System.out.print("Cola 1: ");
  95.                 C1.Mostrar();
  96.                 System.out.println();
  97.                 break;
  98.             case 2:
  99.                 EManual(C2);
  100.                 System.out.print("Cola 2: ");
  101.                 C2.Mostrar();
  102.                 System.out.println();
  103.                 break;
  104.             case 3:
  105.                 System.out.print("Volviendo al Menu Principal...");
  106.                 break;
  107.             default:
  108.                 System.out.println("Opcion no valida...");
  109.             }
  110.             System.out.println();
  111.         }while(opc != 3);
  112.     }
  113.    
  114.     public static void EManual(Cola CAux) {
  115.         Scanner I = new Scanner(System.in);
  116.         char resp;
  117.         do {
  118.             System.out.println("Numero: ");
  119.             int Aux = I.nextInt();
  120.             CAux.EncolarManual(Aux);
  121.             System.out.println();
  122.             System.out.println("Desea cargar otro numero? s/n");
  123.             resp = I.next().charAt(0);
  124.         }while(resp=='s' || resp=='S');
  125.         System.out.println();
  126.     }
  127.    
  128.     public static void Desencolar(Cola C1, Cola C2) {
  129.         int opc;
  130.         Scanner I = new Scanner(System.in);
  131.         do {
  132.             System.out.println("1) Desencolar valores de la cola 1");
  133.             System.out.println("2) Desencolar valores de la cola 2");
  134.             System.out.println("3) Salir");
  135.             System.out.print("Opcion:");
  136.             opc = I.nextInt();
  137.             System.out.println();
  138.             switch (opc) {
  139.             case 1:
  140.                 DManual(C1);
  141.                 System.out.print("Cola 1: ");
  142.                 C1.Mostrar();
  143.                 System.out.println();
  144.                 break;
  145.             case 2:
  146.                 DManual(C2);
  147.                 System.out.print("Cola 2: ");
  148.                 C2.Mostrar();
  149.                 System.out.println();
  150.                 break;
  151.             case 3:
  152.                 System.out.print("Volviendo al Menu Principal...");
  153.                 break;
  154.             default:
  155.                 System.out.println("Opcion no valida...");
  156.             }
  157.         }while(opc != 3);
  158.         System.out.println();
  159.     }
  160.    
  161.     public static void DManual(Cola CAux) {
  162.         Scanner I = new Scanner(System.in);
  163.         char resp;
  164.         do{
  165.         CAux.DesencolarManual();
  166.         System.out.println();
  167.         System.out.println("Desea desencolar otro valor?¿ s/n");
  168.         resp = I.next().charAt(0);
  169.         }while(resp=='s'||resp=='S');
  170.         System.out.println();
  171.     }
  172.    
  173.     public static void EncolarNueva(Cola C1,Cola C2, Cola ColaNueva) {
  174.         Cola C1copia = new Cola(C1);
  175.         Cola C2copia = new Cola(C2);
  176.        
  177.         while(!C1copia.EstaVacia() && !C2copia.EstaVacia()) {
  178.             ColaNueva.Encolar(C1copia.Desencolar());
  179.             ColaNueva.Encolar(C2copia.Desencolar());
  180.         }
  181.         if(!C1copia.EstaVacia())
  182.             while(!C1copia.EstaVacia())
  183.                 ColaNueva.Encolar(C1copia.Desencolar());
  184.         else
  185.             if(!C2copia.EstaVacia())
  186.                 while(!C2copia.EstaVacia())
  187.                     ColaNueva.Encolar(C2copia.Desencolar());
  188.         System.out.println("Sucesiva y alternadamente se toma un elemento de cada cola y se encola en una nueva");
  189.         System.out.println();
  190.         System.out.print("Cola Nueva: ");
  191.         ColaNueva.Mostrar();
  192.     }
  193.  
  194. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement