diff --git b/Bisiestos.java a/Bisiestos.java new file mode 100644 index 0000000..9de20b8 --- /dev/null +++ a/Bisiestos.java @@ -0,0 +1,19 @@ +public class Bisiestos { + public static void main(String []args){ + /* + * Calculo de anhos bisiestos; + * */ + System.out.println("Anhos bisiestos desde 1960 hasta hoy: "); + int year_counter = 1960; + do{ + if(year_counter%100 == 0){ + if(year_counter%400 == 0){ + System.out.println(year_counter); + } + }else{ + System.out.println(year_counter); + } + year_counter += 4; + }while(year_counter<2021); + } +} diff --git b/Box.java a/Box.java new file mode 100644 index 0000000..af6cdc2 --- /dev/null +++ a/Box.java @@ -0,0 +1,44 @@ +public class Box { + private float ancho; + private float largo; + private float profundidad; + + + public float calcularVolumen(){ + return ancho*largo*profundidad; + } + + public float getAncho() { + return ancho; + } + + public void setAncho(float ancho) { + this.ancho = ancho; + } + + public float getLargo() { + return largo; + } + + public void setLargo(float largo) { + this.largo = largo; + } + + public float getProfundidad() { + return profundidad; + } + + public void setProfundidad(float profundidad) { + this.profundidad = profundidad; + } + + public static void main(String[] args){ + Box box = new Box(); + box.setAncho(5.2f); + box.setLargo(2.3f); + box.setProfundidad(2f); + System.out.println("El volumen de la caja es : "+box.calcularVolumen()); + } +} + + diff --git b/Cuadrado.java a/Cuadrado.java new file mode 100644 index 0000000..86a8108 --- /dev/null +++ a/Cuadrado.java @@ -0,0 +1,39 @@ +import java.util.InputMismatchException; +import java.util.Scanner; + +public class Cuadrado { + public static int calcularCuadrado(int x){ + System.out.println("Usando metodo con variable int"); + return x*x; + } + + public static float calcularCuadrado(float x){ + System.out.println("Usando metodo con variable float"); + return x*x; + } + + public static double calcularCuadrado(double x){ + System.out.println("Usando metodo con variable double"); + return x*x; + } + + public static void main(String[] args){ + Scanner in = new Scanner(System.in); + String numero = ""; + int numeroInt = 0; + float numeroFloat = 0f; + double numeroDouble = 0; + + try { + numero = in.nextLine(); + numeroInt = Integer.parseInt(numero); + numeroFloat = Float.parseFloat(numero); + numeroDouble = Double.parseDouble(numero); + }catch (Exception e) { + System.out.println("El numero proveido no es un entero"); + } + System.out.println(calcularCuadrado(numeroInt)); + System.out.println(calcularCuadrado(numeroDouble)); + System.out.println(calcularCuadrado(numeroFloat)); + } +} diff --git b/ERM_UPS.drawio.pdf a/ERM_UPS.drawio.pdf new file mode 100644 index 0000000..04e491c Binary files /dev/null and a/ERM_UPS.drawio.pdf differ diff --git b/Estacion.java a/Estacion.java new file mode 100644 index 0000000..67fe8a9 --- /dev/null +++ a/Estacion.java @@ -0,0 +1,58 @@ +import java.util.InputMismatchException; +import java.util.Scanner; +import java.util.TreeMap; + +public class Estacion { + public static void main(String []args){ + Scanner in = new Scanner(System.in); + int mes = 0; + boolean repetir = true; + + try { + mes = in.nextInt(); + }catch (InputMismatchException e) { + System.out.println("El numero proveido no es un entero"); + } + switch (mes){ + case 1: + System.out.println("Es Verano"); + break; + case 2: + System.out.println("Es Verano"); + break; + case 3: + System.out.println("Es Otonho"); + break; + case 4: + System.out.println("Es Otonho"); + break; + case 5: + System.out.println("Es Otonho"); + break; + case 6: + System.out.println("Es Invierno"); + break; + case 7: + System.out.println("Es Invierno"); + break; + case 8: + System.out.println("Es Invierno"); + break; + case 9: + System.out.println("Es Primavera"); + break; + case 10: + System.out.println("Es Primavera"); + break; + case 11: + System.out.println("Es Primavera"); + break; + case 12: + System.out.println("Es Verano"); + break; + default: + System.out.println("Ese numero no corresponde a un mes del anho"); + } + } + +} diff --git b/SalonBelleza.java a/SalonBelleza.java new file mode 100644 index 0000000..c14e713 --- /dev/null +++ a/SalonBelleza.java @@ -0,0 +1,172 @@ +import java.util.InputMismatchException; + +import java.util.Scanner; + +class Cliente{ + /* + * Clase que crea un cliente y le asigna un numero random de visitas. + * */ + private String nombre; + private String ruc; + private int numVisita; + + public String getRuc() { + return ruc; + } + + public void setRuc(String ruc) { + this.ruc = ruc; + } + + public Cliente(String nombre, String ruc) { + this.nombre = nombre; + this.ruc = ruc; + this.numVisita = (int)(Math.random()*125); + } + + public String getNombre() { + return nombre; + } + + public void setNombre(String nombre) { + this.nombre = nombre; + } + + public int getNumVisita() { + return numVisita; + } + + public void setNumVisita(int numVisita) { + this.numVisita = numVisita; + } + + public void addVisita(){ + numVisita++; + } +} + +class Descuento{ + /* + * Clase que representa el descuento de cada cliente, tiene como paramentros el cliente del cual + * es el descuento y define su descuento por su cantidad de visitas. + */ + private String tipo; + private Cliente cliente; + + public String getTipo() { + return tipo; + } + + public void setTipo(String tipo) { + this.tipo = tipo; + } + + public Descuento(Cliente cliente){ + this.cliente = cliente; + if(cliente.getNumVisita()>=100){ + this.tipo = "premium"; + }else if(cliente.getNumVisita()>=50){ + this.tipo = "oro"; + }else if(cliente.getNumVisita()>=20){ + this.tipo = "plata"; + }else{ + this.tipo = ""; + } + } +} + + + +class Visita{ + /* + * Clase que administra cada visita de un cliente y provee un factura por visita. + * */ + private double gastoProductos; + private double gastoServicios; + private Descuento descuento; + private Cliente cliente; + + public Visita(double gastoProductos, double gastoServicios, Cliente cliente, Descuento descuento){ + this.gastoProductos = gastoProductos; + this.gastoServicios = gastoServicios; + this.cliente = cliente; + this.descuento = descuento; + } + + public void vistaCliente(){ + cliente.addVisita(); + System.out.println( + "El cliente ha visitado el local "+ cliente.getNumVisita() + " veces." + ); + } + + public void calcularFactura(){ + double montoACobrar; + String extraInfo = ""; + switch (descuento.getTipo()){ + case "premium": + montoACobrar = (gastoServicios+gastoProductos)*80/100; + extraInfo = "Se aplico descuento premium"; + break; + case "oro": + montoACobrar = (gastoServicios+gastoProductos)*85/100; + extraInfo = "Se aplico descuento oro"; + break; + case "plata": + montoACobrar = (gastoServicios+gastoProductos)*90/100; + extraInfo = "Se aplico descuento plata"; + break; + default: + montoACobrar = (gastoServicios+gastoProductos); + } + System.out.println("Salon de Belleza X\n Nombre y Apellido: "+cliente.getNombre() + + "\nRUC: " + cliente.getRuc() + + "\nMonto A Cobrar: " + montoACobrar + " $\n" + + extraInfo); + } + + public double getGastoProductos() { + return gastoProductos; + } + + public void setGastoProductos(double gastoProductos) { + this.gastoProductos = gastoProductos; + } + + public double getGastoServicios() { + return gastoServicios; + } + + public void setGastoServicios(double gastoServicios) { + this.gastoServicios = gastoServicios; + } +} + +public class SalonBelleza { + + public static void main(String[] args){ + Scanner in = new Scanner(System.in); + String nombreCliente=""; + String ruc = ""; + double gastoProductos=0; + double gastoServicios=0; + try { + System.out.println("Ingrese el nombre del cliente: "); + nombreCliente = in.nextLine(); + System.out.println("Ingrese el RUC del cliente: "); + ruc = in.nextLine(); + System.out.println("Ingrese los gastos en productos de la visita: ($)"); + gastoProductos = in.nextDouble(); + System.out.println("Ingrese los gastos en servicios de la visita: ($)"); + gastoServicios = in.nextDouble(); + }catch (InputMismatchException e) { + System.out.println("Formato de entrada incorrecto"); + } + Cliente cliente = new Cliente(nombreCliente, ruc); + Descuento descuento = new Descuento(cliente); + Visita visita = new Visita(gastoProductos, gastoServicios, cliente, descuento); + visita.vistaCliente(); + visita.calcularFactura(); + + } +} diff --git b/StackTest.java a/StackTest.java new file mode 100644 index 0000000..feddaa0 --- /dev/null +++ a/StackTest.java @@ -0,0 +1,140 @@ +import java.util.Scanner; + +class Stack { + /* + * Clase que representa un stack e implementa el push y el pop del stack. Acepta integers como floats + */ + private int[] stack; + private float[] stackf; + private int capacidad; + private int pointer; + + public float[] getStackf() { + return stackf; + } + + public void setStackf(float[] stackf) { + this.stackf = stackf; + } + + public int getPointer() { + return pointer; + } + + public void setPointer(int pointer) { + this.pointer = pointer; + } + + public int getCapacidad() { + return capacidad; + } + + public void setCapacidad(int capacidad) { + this.capacidad = capacidad; + } + + public Stack(int capacidad, int[] stack, float[] stackf){ + this.capacidad = capacidad; + this.stack = stack; + this.pointer = capacidad - 1; + this.stackf = stackf; + } + + public void push(float number){ + if(pointer + 1 == capacidad){ + System.out.println("El stack esta a maxima capacidad"); + }else{ + this.stack[pointer+1] = (int)number; + this.stackf[pointer+1] = number; + pointer++; + } + } + + public void push(int number){ + if(pointer + 1 == capacidad){ + System.out.println("El stack esta a maxima capacidad"); + }else{ + this.stack[pointer+1] = number; + this.stackf[pointer+1] = (float)number; + pointer++; + } + } + + + public int pop(){ + if(pointer - 1 < -1){ + System.out.println("Ya no existen datos en el stack"); + }else{ + pointer--; + return this.stack[pointer+1]; + } + return -1; + } + + public int[] getStack() { + return stack; + } + + public void setStack(int[] stack) { + this.stack = stack; + } + + public void printStack(){ + for(int i=pointer;i>=0;i--){ + System.out.println(stackf[i]); + } + } +} + + +public class StackTest{ + + public static void main(String[] args){ + /* + * Menu de gestion del stack. + * */ + int choice = 0; + int cantidad; + int dato; + boolean continuar = true; + Scanner in = new Scanner(System.in); + System.out.println("Ingrese la cantidad de datos de su stack: "); + cantidad = in.nextInt(); + int[] datos = new int[cantidad]; + float[] datosf = new float[cantidad]; + for(int i=0;i 6){ + System.out.println("Su eleccion esta fuera de rango"); + break; + }else if(choice == 6){ + System.out.println("Saliendo"); + break; + } + System.out.println(descipciones[choice - 1]); + }while(choice!=6); + + } +}