Asignatura
Datos del alumno
Métodos Avanzados de Programación Científica y Computación
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
1. Una biblioteca ha decidido informatizar el préstamo de libros. La biblioteca tiene libros y revistas que se pueden prestar durante un máximo de unas emana. Si el libro es de consulta, no se puede prestar, ya que se debe utilizar únicamente dentro de la biblioteca. Los usuarios de la biblioteca que no realicen la devolución de los préstamos en el tiempo adecuado serán sancionados sin poder alquilar libros durante
.
una semana
2. Se quiere informatizar el proceso de gestión de los alumnos con sus matrículas. Todos los alumnos deben estar matriculados como mínimo en
una
asignatura.
Las
asignaturas
pueden
ser
anuales
o
cuatrimestrales. Una misma asignatura podrá ser impartida por uno o varios profesores. Un curso se compone de varias asignaturas que podrán ser impartidas durante un cuatrimestre o un año. Los alumnos podrán consultar las notas de todas las asignaturas en las que estén matriculados.
Asignatura
Datos del alumno
Fecha
Apellidos: Pozo Parra
Métodos Avanzados de Programación Científica y Computación
28/04/2018 Nombre: Fredin Fernando
3. Se requiere realizar un programa informático que gestione a los empleados de una empresa informática. Existen dos tipos de empleados los empleados: internos y los colaboradores. Los empleados internos tienen nombre, apellidos, DNI, teléfono, cargo e ID de empleado. De los empleados externos se almacena el nombre, apellidos, DNI y empresa a
.
la que pertenece
CODIGO DE GESTION EMPLEADOS CLASE EMPLEADO PADRE package PEmpleados; public class CEmpleados { // atributos private String IdEmpleado,Nombre, Apellidos, DNI; // constructores public CEmpleados() { this.IdEmpleado=" "; this.Nombre=""; this. Apellidos=""; this.DNI=""; } public CEmpleados(String Id, String Nombre, String Apellido, String DNI ) { this.IdEmpleado= Id; this.Nombre= Nombre;
Asignatura Métodos Avanzados de Programación Científica y Computación
Datos del alumno
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
this. Apellidos= Apellido; this.DNI=DNI; } // metodos public String getIdEmpleado() { return IdEmpleado; } public void setIdEmpleado(String idEmpleado) { IdEmpleado = idEmpleado; } public String getNombre() { return Nombre; } public void setNombre(String nombre) { Nombre = nombre; } public String getApellidos() { return Apellidos; } public void setApellidos(String apellidos) { Apellidos = apellidos; } public String getDNI() { return DNI; } public void setDNI(String dNI) { DNI = dNI; } public void mostrarInfoEmpleado(){ System.out .print("Nombre: " + getNombre() + " " + getApellidos()+ " "); System.out .print("DNI: " + getDNI()+ " "); }
}
CLASE EMPLEADO INTERNO HIJO package PEmpleados; public class CEmpleadosInternos extends CEmpleados { //atributos private String Telefono, Cargo; // constructores public CEmpleadosInternos() { super(); this.Telefono=""; this.Cargo="";
Asignatura Métodos Avanzados de Programación Científica y Computación
Datos del alumno
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
} public CEmpleadosInternos(String Id, String Nombre, String Apellido, String DNI, String Telefono, String Cargo ) { super(Id,Nombre, Apellido,DNI); this.Telefono=Telefono; this.Cargo=Cargo; } // metodos public String getTelefono() { return Telefono; } public void setTelefono(String telefono) { Telefono = telefono; } public String getCargo() { return Cargo; } public void setCargo(String cargo) { Cargo = cargo; } public void mostrarInfoEmpleadoInterno(){ mostrarInfoEmpleado(); System.out .print("Telefono: " + getTelefono()+ " "); System.out .print("Cargo: " + getCargo()+ " "); } }
CLASE EMPLEADO EXTERNO package PEmpleados; public class CEmpleadosExternos extends CEmpleados{ //atributos private String EmpresaPertenece; // constructores public CEmpleadosExternos() { super(); this.EmpresaPertenece=""; } public CEmpleadosExternos(String Id, String Nombre, String Apellido, String DNI, String EmpresaPertenece ) { super(Id,Nombre, Apellido,DNI); this.EmpresaPertenece= EmpresaPertenece; } // metodos
Asignatura Métodos Avanzados de Programación Científica y Computación
Datos del alumno
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
public String getEmpresaPertenece() { return EmpresaPertenece; } public void setEmpresaPertenece(String empresaPertenece) { EmpresaPertenece = empresaPertenece; } public void mostrarInfoEmpleadoExterno(){ mostrarInfoEmpleado(); System.out .print("Empresa Externa: " + getEmpresaPertenece()+ " "); } } CLASE MAIN package PEmpleados; import java.util.Scanner; public class Main { public static void main(String[] args) { // INGRESO POR TECLADO DE INFORMACION Scanner scanner = new Scanner(System.in); //DATOS EMPLEADO INTERNO System.out .print("------------------DATOS EMPLEADO INTERNO--------- "); System.out .print("Ingresa la cedula del Empleado: "); String ciEmpleadoInterno = scanner.nextLine(); System.out .print("Ingresa nombre del Empleado: "); String NEmpleadoInterno = scanner.nextLine(); System.out .print("Ingresa apellidos del Empleado: "); String AEmpleadoInterno = scanner.nextLine(); System.out .print("Ingresa DNI del Empleado: "); String DNIEmpleadoInterno= scanner.nextLine(); System.out .print("Ingresa el Telefono del Empleado: " ); String TEmpleadoInterno = scanner.nextLine(); System.out .print("Ingresa El Cargo del Empleado: " ); String CEmpleadoInterno = scanner.nextLine(); //CREACION OBJETO EMPLEADO INTERNO CEmpleadosInternos Empleado1= new CEmpleadosInternos(ciEmpleadoInterno,NEmpleadoInterno, AEmpleadoInterno,DNIEmplead oInterno,TEmpleadoInterno,CEmpleadoInterno); System.out .println("\f"); //DATOS EMPLEADO EXTERNO System.out .print("------------------DATOS EMPLEADO EXTERNO--------- "); System.out .print("Ingresa la cedula del Empleado: "); String ciEmpleadoE = scanner.nextLine(); System.out .print("Ingresa nombre del Empleado: "); String NEmpleadoE = scanner.nextLine(); System.out .print("Ingresa apellidos del Empleado: "); String AEmpleadoE = scanner.nextLine();
Asignatura Métodos Avanzados de Programación Científica y Computación
Datos del alumno
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
System.out .print("Ingresa DNI del Empleado: "); String DNIEmpleadoE= scanner.nextLine(); System.out .print("Ingresa Empresa Externa: "); String Eempresa = scanner.nextLine(); CEmpleadosExternos EmpleadoE1 = new CEmpleadosExternos(ciEmpleadoE,NEmpleadoE, AEmpleadoE,DNIEmpleadoE,Eempresa); System.out .print("------------------DATOS EMPLEADO INTERNO--------- "); Empleado1.mostrarInfoEmpleadoInterno(); System.out .print("------------------DATOS EMPLEADO INTERNO--------- "); EmpleadoE1.mostrarInfoEmpleadoExterno(); }
4. Realizar la implementación en Eclipse (Polimorfismo)
CODIGO DE POLIMORFISMO CLASE PADRE FIGURA
package Figuras; public abstract class CFigura { //atributos private int color; //construtores public abstract double area(); public CFigura() { this.color=0;
Asignatura Métodos Avanzados de Programación Científica y Computación
Datos del alumno
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
} public CFigura(int color) { this.color=color; } //metodos public int getColor() { return color; } public void setColor(int color) { this.color = color; }
CLASE HIJA CUADRADO
package Figuras; public class CCuadra extends CFigura { private double lado; public CCuadra (){ super(); this.lado=0; } public CCuadra(int color, double lado){ super(color); this.lado=lado; } public double getLado() { return lado; } public void setLado(double lado) { this.lado = lado; } @Override public double area(){ return(lado*lado); } }
CLASE HIJA RECTANGULO package Figuras; public class CRectangulo extends CFigura { //atributos private int Base, Altura; //constructores
Asignatura Métodos Avanzados de Programación Científica y Computación
Datos del alumno
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
public CRectangulo(){ super(); this.Base=0; this. Altura=0; } public CRectangulo(int color, int base, int altura){ super(color); this.Base= base; this. Altura=altura; } //metodos public int getBase() { return Base; } public void setBase(int base) { Base = base; } public int getAltura() { return Altura; } public void setAltura(int altura) { Altura = altura; } @Override public double area(){ return(Base* Altura); } }
CLASE MAIN package Figuras; import java.io.ObjectInputStream.GetField; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub CRectangulo rectangulo= new CRectangulo(2,10,5); CCuadra cuadrado = new CCuadra(4,5); System.out .print("------------------AREAS-------- "); System.out .println(); System.out .print("RECTANGULO:..... BASE: " + rectangulo.getBase()+ " ALTURA"+" " + rectangulo.getAltura() + "="+ rectangulo.area()); System.out .println(); System.out .println(); System.out .print("CUADRADO:..... LADO: " + cuadrado.getLado() + "="+ cuadrado.area()); }
Asignatura Métodos Avanzados de Programación Científica y Computación
Datos del alumno
Fecha
Apellidos: Pozo Parra 28/04/2018 Nombre: Fredin Fernando
}
5. Requiere si mular la creación de un futbolista virtual en la que tiene que realizar simulaciones independientes en los brazos y piernas y el usuario tiene que seleccionar la vestimenta que usara. Para simplificar el problema se tienen que añadir atributos a los brazos y piernas como el tamaño (ancho y largo), para que la ropa se ajuste al cuerpo.