Advertisement
JoseLargo

Untitled

Feb 22nd, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.54 KB | None | 0 0
  1. /*
  2. Hacer un programa en java que implemente la clase Impresora. Tendrá como atributos miembros
  3. los siguientes: contador de páginas impresas, número máximo de impresiones (que será la
  4. capacidad del tóner) y estado de la impresora (encendida o apagada).
  5. Y además tendrá los siguientes métodos:
  6. • Constructor parametrizado(no máximo de impresiones,estado).
  7. • imprimir: imprimirá las páginas que reciba como argumento. Deberá comprobar el estado
  8. del tóner, si éste se encuentra por debajo del 1% avisará para la sustitución del mismo y si
  9. la impresora está encendida o no.
  10. • apagarImpresora: Apagará la impresora.
  11. • encenderImpresora: Encenderá la impresora.
  12. • estadoToner: método que muestra en % el estado del tóner.
  13. • mostrar: mostrará la información relativa a la impresora, estado del tóner, si está
  14. encendida o apagada y contador de páginas impresas.
  15. Por último, haga un pequeño menú que ilustre el funcionamiento de la misma, tal y como este:
  16. 1. Crear impresora
  17. 2. Encender impresora
  18. 3. Apagar impresora
  19. 4. Imprimir
  20. 5. Consultar
  21. */
  22.  
  23. package ejercicio_clases;
  24.  
  25.  
  26.  
  27. import java.util.*;
  28. import java.util.concurrent.TimeUnit;
  29. public class Ejercicio_clases {
  30.  
  31.  
  32. public static void main(String[] args) throws InterruptedException {
  33. Scanner sc= new Scanner(System.in);
  34. int capacidad=0, cont_imp=0;
  35. int indice;
  36. boolean estado=true;
  37.  
  38.  
  39. do{
  40.     System.out.println(" ");
  41.     menu();
  42.     System.out.print("Elija opcion: ");
  43.     indice=sc.nextInt();
  44.     impresora  canon= new impresora(capacidad, estado);
  45.     switch(indice){
  46.         case 1:
  47.             System.out.println("Introduzca capacidad maxima de impresion");
  48.             capacidad=sc.nextInt();
  49.             System.out.println("Si estara encendida true o false si apagada True/False");
  50.             estado=sc.nextBoolean();
  51.             canon= new impresora(capacidad, estado);
  52.             System.out.println("Creando impresora");
  53.             retardo(sc);
  54.             System.out.println("Impresora creada");
  55.             break;
  56.         case 2:
  57.             if(estado){
  58.                 System.out.println("La maquina ya esta encendida");
  59.             }else{
  60.                 estado=true;
  61.                 canon.encenderImpresora(estado);
  62.                 System.out.println("Encendiendo impresora");
  63.             }
  64.             retardo(sc);
  65.             break;
  66.         case 3:
  67.             if(!estado){
  68.                 System.out.println("La maquina ya esta apagada");
  69.             }else{
  70.                 estado=false;
  71.                 canon.apagarImpresora(estado);
  72.                 System.out.println("Apagando impresora");
  73.             }
  74.             retardo(sc);
  75.             break;
  76.         case 4:
  77.             int p;
  78.             System.out.println("¿Numero de paginas a imprimir?");
  79.             p=sc.nextInt();
  80.             if (p<1) {
  81.                 System.out.println("Error. No se pueden imprimir menos de 1 pagina");
  82.             }else{
  83.                 estado=true;
  84.                 cont_imp+=canon.imprimir(p, cont_imp, estado);
  85.             }
  86.             retardo(sc);    
  87.             break;
  88.         case 5:
  89.             System.out.println("El estado del toner es de "+canon.estadoToner(cont_imp)+"%");
  90.             retardo(sc);
  91.             break;
  92.         case 6:
  93.             canon.mostrar(estado, cont_imp);
  94.             retardo(sc);
  95.             break;
  96.         case 7:
  97.             System.out.println("Saliendo del menu");
  98.             retardo(sc);
  99.             break;
  100.         default:
  101.             System.out.println("Numero no valido");
  102.             retardo(sc);
  103.             break;
  104.         }
  105.     }while(indice!=7);
  106. }
  107.  
  108.     public static void menu(){
  109.  
  110.         System.out.println("1.Crear Impresora");
  111.         System.out.println("2.Encender");
  112.         System.out.println("3.Apagar");
  113.         System.out.println("4.Imprimir");
  114.         System.out.println("5.Consultar toner");
  115.         System.out.println("6.Mostrar info del estado");
  116.         System.out.println("7.Salir");
  117.         System.out.println("‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐");
  118.     }
  119.     /*Animacion de retraso en operacion*/
  120.     public static void retardo(Scanner sc) throws InterruptedException{
  121.         for (int i = 0; i < 5; i++) {
  122.             TimeUnit.SECONDS.sleep(1);
  123.             System.out.print("*");
  124.         }
  125.         System.out.println(" ");
  126.         System.out.println("Pulse INTRO para continuar");
  127.         sc.nextLine();
  128.         sc.nextLine();
  129.     }
  130. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement