Advertisement
TheJosecraft

Main_Impresora

Feb 22nd, 2017
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.62 KB | None | 0 0
  1. /*Hacer un programa en java que implemente la clase Impresora. Tendrá como atributos miembros
  2. los siguientes: contador de páginas impresas, número máximo de impresiones (que será la
  3. capacidad del tóner) y estado de la impresora (encendida o apagada).
  4. Y además tendrá los siguientes métodos:
  5. • Constructor parametrizado(nº máximo de impresiones,estado).
  6. • imprimir: imprimirá las páginas que reciba como argumento. Deberá comprobar el estado
  7. del tóner, si éste se encuentra por debajo del 1% avisará para la sustitución del mismo y si
  8. la impresora está encendida o no.
  9. • apagarImpresora: Apagará la impresora.
  10. • encenderImpresora: Encenderá la impresora.
  11. • estadoToner: método que muestra en % el estado del tóner.
  12. • mostrar: mostrará la información relativa a la impresora, estado del tóner, si está
  13. encendida o apagada y contador de páginas impresas.
  14. Por último, haga un pequeño menú que ilustre el funcionamiento de la misma, tal y como este:
  15. 1. Crear impresora
  16. 2. Encender impresora
  17. 3. Apagar impresora
  18. 4. Imprimir
  19. 5. Consultar el estado del tóner.
  20. 6. Mostrar información del estado de la impresora.
  21. 7. Salir*/
  22.  
  23. package impresora;
  24.  
  25. import java.util.Scanner;
  26. import java.util.concurrent.TimeUnit;
  27.  
  28. public class Main {
  29.  
  30.     public static void main(String[] args) throws InterruptedException {
  31.         int maximo = 0;
  32.         boolean estado = false;
  33.         String cad;
  34.         boolean fin = false;
  35.         int menu;
  36.         int contador = 0;
  37.         Impresora imp1 = new Impresora(0, false);
  38.        
  39.         System.out.println("Asegúrese de crear la impresora antes de realizar otra acción");
  40.         do {
  41.             menu();
  42.             System.out.print("Elige una opción: ");
  43.             menu = new Scanner(System.in).nextInt();
  44.            
  45.             switch (menu) {
  46.            
  47.             /*Crear impresora*/
  48.             case 1:
  49.                
  50.                 maximo = capacidad();
  51.                
  52.                 estado = estado(estado);
  53.                
  54.                 imp1 = new Impresora(maximo, estado);
  55.                 System.out.println("Impresora creada");
  56.                
  57.                 pausa();
  58.                 break;
  59.                
  60.             /*Encender impresora*/ 
  61.             case 2:
  62.                 imp1.encenderImpresora();
  63.                 System.out.println("Impresora encendida");
  64.                
  65.                 pausa();
  66.                 break;
  67.                
  68.             /*Apagar impresora*/
  69.             case 3:
  70.                 imp1.apagarImpresora();
  71.                 System.out.println("Impresora apagada");
  72.                
  73.                 pausa();
  74.                 break;
  75.                
  76.             /*Imprimir*/
  77.             case 4:
  78.                 int paginas;
  79.                 System.out.print("Introduce el número de páginas a imprimir: ");
  80.                 paginas = new Scanner(System.in).nextInt();
  81.                
  82.                 contador += paginas;
  83.                
  84.                 imp1.imprimir(paginas);
  85.                
  86.                 pausa();
  87.                 break;
  88.                
  89.             /*Estado del tóner*/  
  90.             case 5:
  91.                 System.out.println("Estado: " + imp1.estadoToner() + "%");
  92.                 pausa();
  93.                 break;
  94.            
  95.             /*Estado de la impresora*/
  96.             case 6:
  97.                 imp1.mostrar();
  98.                
  99.                 pausa();
  100.                 break;
  101.                
  102.             /*Salir*/
  103.             case 7:
  104.                 System.out.println("Adiós");
  105.                 fin = true;
  106.                 break;
  107.             default:
  108.                 System.out.println("Elige una opción correcta");
  109.                 pausa();
  110.                 break;
  111.             }
  112.         } while (!fin);
  113.        
  114.     }
  115.  
  116.     private static boolean estado(boolean estado) {
  117.         String cad;
  118.         System.out.print("Introduce el estado de la impresora (Apagada/Encendida): ");
  119.         cad = new Scanner(System.in).nextLine();
  120.  
  121.         if (cad.toLowerCase().equals("encendida")) {
  122.             estado = true;
  123.         } else if(cad.toLowerCase().equals("apagada")){
  124.             estado = false;
  125.         }else{
  126.             System.out.println("Introduzca un estado correcto");
  127.             System.out.print("Introduce el estado de la impresora (Apagada/Encendida): ");
  128.             cad = new Scanner(System.in).nextLine();
  129.         }
  130.         return estado;
  131.     }
  132.  
  133.     private static int capacidad() {
  134.         int maximo;
  135.         System.out.print("Introduce la capacidad del tóner: ");
  136.         maximo = new Scanner(System.in).nextInt();
  137.         if (maximo <= 0) {
  138.             System.out.println("Introduzca una cantidad correcto");
  139.             System.out.print("Introduce la capacidad del tóner: ");
  140.             maximo = new Scanner(System.in).nextInt();
  141.         }
  142.         return maximo;
  143.     }
  144.  
  145.     /*Procedimiento que nos muestra un menú para elegir la opción que deseemos hacer*/
  146.     public static void menu(){
  147.         System.out.println("***************MENÚ***************");
  148.         System.out.println("1. Crear impresora");
  149.         System.out.println("2. Encender impresora");
  150.         System.out.println("3. Apagar impresora");
  151.         System.out.println("4. Imprimir");
  152.         System.out.println("5. Consultar el estado del tóner");
  153.         System.out.println("6. Mostrar información del estado de la impresora");
  154.         System.out.println("7. Salir");
  155.         System.out.println("**********************************");
  156.     }
  157.    
  158.     /*Procedimiento que servirá para dejar un margen entre algunos mensajes*/
  159.     public static void pausa() throws InterruptedException{
  160.         TimeUnit.SECONDS.sleep(3);
  161.     }
  162. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement