Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class Tp3Ej6 {
- public static void main(String[] args) {
- Queue imprimir = new Queue<>();
- Scanner entrada = new Scanner(System.in);
- int cont =0;
- while (cont!=3){
- switch(cont){
- case 1:
- cargarDocumento(entrada,imprimir,cont);
- imprimirDocumento(imprimir);
- break;
- case 2:
- documentoRandom(entrada, imprimir,cont);
- imprimirDocumento(imprimir);
- break;
- }
- cont=Helper.validarNumero(entrada, "'opcion' \n1-Manual \n2-Random \n3-Salir");
- }
- }
- public static void cargarDocumento(Scanner entrada, Queue imprimir,int cont) {
- Documento documento;
- String nombre,tamaño,preferencia;
- int cantidad,numeroDeCopias,continuar=1;
- while(continuar!=2){
- nombre = Helper.cargarLetra(entrada, "ingresar nombre");
- cantidad = Helper.validarNumero(entrada, "ingresar cantidad de hojas");
- tamaño = elegirTamaño(entrada,cont);
- numeroDeCopias = Helper.validarNumero(entrada, "ingresar numero de copia");
- preferencia = preferenciaImprimir(entrada,cont);
- documento = new Documento(nombre, cantidad, tamaño, numeroDeCopias, preferencia);
- imprimir.offer(documento);
- continuar = Helper.elegirOpcion(entrada,"'opcion' \n1-Seguir Cargando \n2-Salir");
- }
- }
- public static void documentoRandom(Scanner entrada, Queue imprimir,int cont) {
- Documento documento;
- String nombre,tamaño,preferencia;
- int cantidad,numeroDeCopias,continuar=1;
- while(continuar!=2){
- nombre = nombreRandom("Generando nombre aleatorio...");
- cantidad = generarRandom ("Generando cantidad de hojas...",100);
- tamaño = elegirTamaño(entrada,cont);
- numeroDeCopias = generarRandom("Generando numero de copia...",100);
- preferencia = preferenciaImprimir(entrada,cont);
- documento = new Documento(nombre, cantidad, tamaño, numeroDeCopias, preferencia);
- imprimir.offer(documento);
- continuar = Helper.elegirOpcion(entrada,"'opcion' \n1-Seguir Cargando \n2-Salir");
- }
- }
- public static String preferenciaImprimir(Scanner entrada,int cont) {
- int opcion =0;
- while(true){
- if(opcion ==1){
- return "Color";
- }
- if(opcion ==2){
- return "Escala Grises";
- }
- if (cont==1){
- opcion = Helper.validarNumero(entrada,"'Opcion de Preferencia' \n1-Color \n2-Escala en Grises");
- }
- if(cont==2){
- opcion = generarRandom("Seleccionando preferencia...",2);
- }
- }
- }
- public static String elegirTamaño(Scanner entrada,int cont) {
- int opcion =0;
- while(true){
- if(opcion ==1){
- return "A4";
- }
- if(opcion ==2){
- return "Oficio";
- }
- if(opcion ==3){
- return "Carta";
- }
- if (cont==1){
- opcion = Helper.validarNumero(entrada,"'Opcion de Tamaño' \n1-A4 \n2-Oficio \n3-Carta");
- }
- if(cont==2){
- opcion = generarRandom("Seleccionando tamaño...",3);
- }
- }
- }
- public static String nombreRandom(String mensaje){
- int random;
- System.out.println(mensaje);
- String [] nombre ={"Fernanda","Lorena ","Martín ","Sara","Pedro","Gabriel","Gerardo","Lis","Catriel","Camila"};
- random = (int) (Math.random() * nombre.length);
- return nombre[random];
- }
- public static int generarRandom(String mensaje,int x) {
- System.out.println(mensaje);
- int numRandom = (int) (Math.random() * x);
- return numRandom;
- }
- public static void imprimirDocumento(Queue imprimir){
- Documento analizar;
- int imprimirColor=0,imprimirOficio=0,contador=0,max=0,min=0,posicion1=0,posicion2=0;
- while(!imprimir.estaVacia()){
- contador++;
- analizar =(Documento) imprimir.pool();
- if (analizar.getPreferencia().equals("Color")){
- imprimirColor++;
- }
- if (analizar.getTamaño().equals("Oficio")){
- imprimirOficio++;
- }
- if(analizar.getCantidad()>max){
- posicion1=contador;
- max=analizar.getCantidad();
- }
- if(analizar.getCantidad()<max){
- posicion2=contador;
- min=analizar.getCantidad();
- }
- System.out.println(analizar);
- }
- informar(contador,imprimirColor,imprimirOficio,posicion1,max,posicion2,min);
- }
- public static void informar(int contador,int imprimirColor,int imprimirOficio,int posicion1,int max,int posicion2,int min){
- System.out.println();
- System.out.println("Informacion de Documentos Imprimidos");
- System.out.println("Documentos Imprimiudos en color: "+ imprimirColor);
- System.out.println("Documentos Imprimidos en Oficio: "+ imprimirOficio);
- System.out.println("Documento: "+ posicion1 + " cantida de hojas: "+max);
- System.out.println("Documento: "+ posicion2 + " cantida de hojas: "+min);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment