Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Practica4 07-08, Ejercicios de Ingeniería de Telecomunicaciones

Asignatura: Programacion, Profesor: Marilina Rivero, Carrera: Ingeniería Técnica en Telecomunicación Especialidad Telemática., Universidad: UJAEN

Tipo: Ejercicios

Antes del 2010

Subido el 05/09/2008

perrankana
perrankana 🇪🇸

3.9

(11)

10 documentos

1 / 18

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12

Vista previa parcial del texto

¡Descarga Practica4 07-08 y más Ejercicios en PDF de Ingeniería de Telecomunicaciones solo en Docsity!

*@param edad edad del Nadador */ public Nadador(String nombre,int numIdentificativo,int edad){ this.nombre=nombre; this.numIdentificativo=numIdentificativo; this.edad=edad; marcas=new double[8]; if (edad<11&&edad>8){ categoria="Benjamin"; } if (edad<13&&edad>10){ categoria="Alevin"; } if (edad<15&&edad>12){ categoria="Infantil"; } if (edad<18&&edad>14){ categoria="Junior"; } if (edad>=18){ categoria="Absoluto"; } if (edad<9){ categoria="Es muy joven para competir"; }

public double marcas(int prueba){ return marcas[prueba]; } public String DNI(){ return DNI; } public void modDNI(String nuevodni){ DNI=nuevodni; } public String telefono(){ return telefono; } public void modTelefono(String nuevotelefono){ telefono=nuevotelefono; } public int anionacimiento(){ anionacimiento=2008-edad; return anionacimiento; } public String nombre(){ return nombre; } public void modNombre(String nuevonombre){ nombre=nuevonombre; } public String categoria(){ return categoria; } public void modCategoria(String nuevacategoria){ categoria=nuevacategoria;

salida = salida + "marca de la prueba 50m mariposa :"+marcas[prueba]+"\r\n"; } if(prueba==4){ salida = salida + "marca de la prueba 100m libres :"+marcas[prueba]+"\r\n"; } if(prueba==5){ salida = salida + "marca de la prueba 100m espalda :"+marcas[prueba]+"\r\n"; } if(prueba==6){ salida = salida + "marca de la prueba 100m braza :"+marcas[prueba]+"\r\n"; } if(prueba==7){ salida = salida + "marca de la prueba 100m mariposa :"+marcas[prueba]+"\r\n"; } // salida = salida + "marca de la prueba numero "+prueba+": "+marcas[prueba]+"\r\n"; } return salida; } public String toString () { return toStringCompleto(); } public void marcas(int prueba,double nuevamarca){ marcas[prueba] = nuevamarca; } } ClubNatacion.java import ccj.; public class ClubNatacion{ private String nombre; private int pos=0; private int num=0; private int NNadadores=5; private Nadador nadadores[]; /* *Constructor con 1 argumentos, en el cual creo el array y lo relleno de nulls para marcar que todo esta disponible *@param nombre nombre del nadador */ public ClubNatacion(String nombre){

int i; this.nombre=nombre; nadadores = new Nadador [NNadadores]; for (i=0; i<NNadadores; i++) { nadadores[i]=null; } } // Constructor con 2 argumentos /** *Constructor con 2 argumentos, en el cual creo el array y lo relleno de nulls para marcar que todo esta disponible *@param nombre nombre del nadador *@param nNada, numero de nadadores en el array */ public ClubNatacion(String n,int nNada){ int i; nombre=n; nNada=NNadadores; nadadores = new Nadador [NNadadores]; for (i=0; i<NNadadores; i++) { nadadores[i]=null; } } public int altaNadador(String nombre,int edad){ // Incrementamos la posicion donde podria guardarse el proximo elemento nadadores[pos++] = new Nadador(nombre,++num,edad); // Busco el siguiente elemento libre (null) for (; pos<nadadores.length && nadadores[pos] != null; pos++); // Si hemos llegado al final del array sin encontrar ningun elemento libre hacemos mas espacio if (pos == nadadores.length){ int i; // Agrandar el array Nadador aux[] = new Nadador[NNadadores + 5]; System.arraycopy(nadadores, 0, aux, 0, NNadadores); NNadadores += 5; // Lleno el resto de nulls for (i = pos; i < aux.length; i++){ aux[i] = null; } nadadores = aux; } return num; }

public int posicionNadador(int numIdentificativo){ int i; for (i=0;i<nadadores.length;i++){ if (nadadores[i]!=null){ if (numIdentificativo==nadadores[i].numIdentificativo()){ return i; } } } return -1; } public int posicionNadador(String nombre){ int i; for (i=0;i<nadadores.length;i++){ if (nadadores[i]!=null){ //if (nombre.equals(nadadores[i].nombre())){ if (nombre.equals (nadadores[i].nombre())) { return i; } } } return -1; } public String toString(){ String salida; int i; salida = "Listado de nadadores:\r\n"; for (i=0; i<NNadadores; i++) { if (nadadores[i] != null) { salida+=nadadores[i].toStringParcial(); } } return salida; } public Nadador obtenerNadador (int pos) { return nadadores[pos]; } public String listarPruebaCategoria(int prueba,String categoria){ int i; String salida="";

for(i=0;i<NNadadores;i++){ if (nadadores[i] != null) { if (categoria.equals (nadadores[i].categoria())){ salida += "La marca del nadador "+ nadadores[i].nombre() + " es: " + nadadores[i].marcas(prueba)+"\r\n"; } } } if (salida.length()==0) { System.out.println("No hay ningun registro en esta categoria"); } salida = "Categoria: "+categoria+"\r\n"+salida; return salida; } } Main.java import ccj.*; public class main{ public static void cargarDatos(ClubNatacion piscina){ String nombre,categoria; int numIdentificativo,edad; System.out.println("\nINTRODUCCION DE NADADORES INICIALES:\n=================================="); do { System.out.print("Nombre del Nadador (ENTER para finalizar):\n "); nombre=Console.in.readLine(); if (!nombre.equals("")){ System.out.println("Introduce la edad : "); edad=Console.in.readInt(); Console.in.readLine(); if(edad<9){ System.out.println("No tiene edad para competir"); }

do{ System.out.println("\nBusqueda de un nadador :\n"); System.out.println("1.- Busca un nadador por su numero identificativo"); System.out.println("2.- Busca un nadador por su nombre"); System.out.println("3.- Salir al menu principal"); opcionaux=Console.in.readInt(); Console.in.readLine(); switch(opcionaux){ case 1: int p; System.out.println("Introduce el numero identificativo"); numIdentificativo=Console.in.readInt(); Console.in.readLine(); p = piscina.posicionNadador(numIdentificativo); System.out.println("valor de p" +p); if (p==-1){ System.out.println("No hay ningun nadador con ese numIdentificativo"); } else{System.out.println("Marcas :"+piscina.obtenerNadador(p).toStringParcial()); } break; case 2: System.out.println("Introduce el nombre : "); nombre=Console.in.readLine(); p = piscina.posicionNadador(nombre); if(p==-1){ System.out.println("No hay ningun nadador con ese nombre"); } else{System.out.println("Marcas :"+piscina.obtenerNadador(p).toStringParcial()); } break; case 3: break; default : System.out.println("No ha introducido una opcion valida"); } }while(opcionaux!=3); break;

case 3: String categoria; // listarPruebaCategoria(int prueba,String categoria); System.out.println("Introduce la categoria que quieres consultar "); categoria=Console.in.readLine(); System.out.println("\n*** Pruebas "); System.out.println("\n\n0.-50m libres"); System.out.println("1.-50m espalda"); System.out.println("2.-50m braza"); System.out.println("3.-50m mariposa"); System.out.println("4.-100m libres"); System.out.println("5.-100m espalda"); System.out.println("6.-100m braza"); System.out.println("7.-100m mariposa\n"); System.out.println("Introduce la prueba quieres consultar"); prueba=Console.in.readInt(); Console.in.readLine(); System.out.println (piscina.listarPruebaCategoria(prueba,categoria)); break; case 4: int p; System.out.println("Consulta de Marcas*"); System.out.println("1.- Para Consultar las marcas introduciendo un nombre"); System.out.println("2.- Para Consultar las marcas introduciendo un numero identificativo :"); System.out.println("3.- Salida al menu principal "); opc=Console.in.readInt(); Console.in.readLine(); switch (opc){ case 1: System.out.println("Introduce nombre "); nombre=Console.in.readLine(); p = piscina.posicionNadador(nombre); if(p==-1){ System.out.println("Ese nadador no existe"); } else{System.out.println("Marcas :"+piscina.obtenerNadador(p).toStringCompleto()); } break; case 2: System.out.println("Introduce numero identificativo "); numIdentificativo=Console.in.readInt(); p = piscina.posicionNadador(numIdentificativo); if(p==-1){ System.out.println("Ese nadador no existe");

System.out.println("Pulsa 1 si quieres modificar su DNI"); System.out.println("Pulsa 2 si quieres modificar su nombre"); System.out.println("Pulsa 3 si quieres modificar su direccion"); System.out.println("Pulsa 4 si quieres modificar su telefono"); System.out.println("Pulsa 5 si quieres modificar su edad"); System.out.println("Pulsa 7 si quieres modificar su categoria"); System.out.println("Pulsa 6 si quieres modificar sus marcas"); System.out.println("Pulsa 0 para salir"); opcionauxx=Console.in.readInt(); Console.in.readLine(); switch(opcionauxx){ case 1: System.out.println("Introduzca nuevo DNI"); String DNI=Console.in.readLine(); nadador.modDNI(DNI); break; case 2: System.out.println("Introduzca nuevo nombre"); nombre=Console.in.readLine(); nadador.modNombre(nombre); break; case 3: System.out.println("Introduzca nueva direccion"); String direccion=Console.in.readLine(); nadador.modDireccion(direccion); break; case 4: System.out.println("Introduzca nuevo telefono"); String telefono=Console.in.readLine(); Console.in.readLine(); nadador.modTelefono(telefono); break; case 5: System.out.println("Introduzca nueva edad"); edad=Console.in.readInt(); Console.in.readLine(); nadador.modEdad(edad); break; case 6: System.out.println("Introduzca nueva Categoria"); categoria=Console.in.readLine(); nadador.modCategoria(categoria); break; case 7:

do{ System.out.println("Pulse 1 si desea modificar marca 50m libres"); System.out.println("Pulse 2 si desea modificar marca 50m espalda"); System.out.println("Pulse 3 si desea modificar marca 50m braza"); System.out.println("Pulse 4 si desea modificar marca 50m mariposa"); System.out.println("Pulse 5 si desea modificar marca 100m libres"); System.out.println("Pulse 6 si desea modificar marca 100m espalda"); System.out.println("Pulse 7 si desea modificar marca 100m braza"); System.out.println("Pulse 8 si desea modificar marca 100m mariposa"); prueba=Console.in.readInt(); Console.in.readLine(); prueba=prueba-1; System.out.println("Introduce nueva marca"); marca=Console.in.readDouble(); Console.in.readLine(); if(opcionaux==1){ piscina.modMarca(nu,marca,prueba); break; } if (opcionaux==2){ piscina.modMarca(no,marca,prueba); break; } }while(opcionaux!=0); break; } }while(opcionauxx!=0); break; } } while(opcionaux!=3); break; case 7 : System.out.println("Introduce el numero identificativo:"); numIdentificativo=Console.in.readInt(); piscina.bajaNadador(numIdentificativo); break;