Java - Problemas para comprender un enunciado

 
Vista:

Problemas para comprender un enunciado

Publicado por Nicolás (1 intervención) el 13/07/2011 12:05:49
Buenas colegas, soy Nicolás y soy un graduado de los cursos Control F, a pesar de haber puesto mucho empeño en querer aprender este lenguaje y tener una trayectoria de 10 años en la informatica todavia me cuesta comprender la sintaxis operacional del lenguaje, es por eso que voy a estar molestando con consultas para poder aprender y enseñar a los novatos venideros, en fin... este es el enunciado de mi problema:


Juego de Rol
La federacion argentina de waterpolo nos ha pedido desarrollar un sistema para administrar su campeonato nacional de waterpolo, en el cual participan equipos de hasta 3 jugadores, del mismo participan equipos de todo el pais.

De cada club se mantiene un nombre, su direccion y los datos de su presidente. Tambien todos los jugadores y cuerpo tecnico que conforman su plantel profesional. ADemas de los datos personales, del entrenador y preparador fisiso se manteiene su antiguedad en el cargo, mientras que para los jugadores se mantiene su posicion dentro del campo de juego (arquero, defensor y delantero). Se debe poder agregar nuevos jugadores al club, asi como tambien cambiar su tecnico, preparador fisico o su presidente.

Este es un ejemplo del ultimo partido:

1
2
3
4
5
6
7
8
Partido n°: 1
Fecha: 16 de junio
Desamparados del Norte (local) vs. Defensores de almagro
Formaciones:
                     Desamparados: juan, pedro, pepe
                        Defensores: emilia. daniel, pablo
Sancionados: pablo
Resultado: Desamparados 3 - defensores 2


Una vez jugados todos los partidos e ingresados al sistema se deben considerar las siguientes consultas:

1-fue sancionado (jugador partido). Dado un jugador y un partido, ver si ese jugador resulto sancionado en el mismo. Por ejemplo esta funcion devuelve verdadero si preguntamos por clara y el partido del recuadro 1. En cambio, para daniel y el mismo partido devuelve Falso.

2-Dado un jugador, devolver la cantidad de partidos donde fue sancionado. sie le partido del recuadro 1 fuera el unico partido del campeonato, esta funcion retornaria 1 para pablo y 0 para el resto. (puede utilizar la funcion definida en el punto anterior para la resolucion de este punto).

3- Dado un club devolver el jugador mas sancionado. nuevamente puede utilizar la funcion definida del punto 2 para esta resolucion.

4-Dado un club y un partido devolver verdadero si el club participo en ese encuentro y falso en caso contrario.

5-Dado un club y un partido, obtener los puntos que obtuvo en ese partido. los puntos son obtenidos de la siguiente manera:
. 4 puntos al ganador
.2 puntos al empate
.0 puntos al perdedor
.Ademas, los clubes que ganen por 3 goles o mas reciben 1 punto extra. En caso del partido del ejemplo desamparados recibe 4 puntos y defensores de almagro 0 si el resultado hubiera sideo de 5 a 2 por ejemplo desamparados recibiria en total 5 puntos, al obtener el punto extra de ganar por 3 goles o mas de diferencia

6-Dado un club, obtener los puntos que obtuvo durante todo el campeonato.

7- Finalmente se pido obtener el campeon del torneo, se puede utilizar la funcion definida en el punto 6.

Este es mi progreso hasta el momento:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package codigo;
 
import java.util.ArrayList;
import codigo.Partido;
 
public class CampeonatoNacional {
	private ArrayList <String> tablaPosiciones;
	private ArrayList <Partido> partidosJugados;
	private ArrayList <Club> Club;
 
 
	public CampeonatoNacional (){
			this.tablaPosiciones= new ArrayList<String>();
				this.Club = new ArrayList<Club>();
					this.partidosJugados= new ArrayList<Partido>();}
 
 
 
	public void addTablaPosiciones(String tP){
		this.tablaPosiciones.add(tP);}
	public String getTablaPosiciones(int i){
		return this.tablaPosiciones.get(i);}
 
	 public void addClub (Club club){
		 this.Club.add(club);}
	 public Club getClub(int i){
		 return this.Club.get(i);}
 
	 public void addPartidosJugados (Partido pJ){
		 this.partidosJugados.add(pJ);}
	 public Partido getPartidosJugados (int i){
		 return this.partidosJugados.get(i);}
 
 
	}




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package codigo;
 
 
public class Empleado {
	private String nombre;
	private String apellido;
	private String direccion;
	private Integer edad;
 
	public Empleado (String nom, String ape, String dire, Integer edad){
		this.nombre=nom;
		this.apellido=ape;
		this.direccion=dire;
		this.edad=edad;}
 
	public void setNombre(String nom){
		this.nombre=nom;}
	public String getNombre(){
		return this.nombre;}
 
	public void setApellido(String ape){
		this.apellido=ape;}
	public String getApellido(){
		return this.apellido;}
 
	public void setDireccion (String dire){
		this.direccion=dire;}
	public String getDireccion(){
		return this.direccion;}
 
	public void setEdad (Integer edad){
		this.edad=edad;}
	public int getEdad(){
		return this.edad;}
 
	public void addEntrenador(Empleado entrenador) {}
 
	public void addPreparadorF(Empleado preparadorF) {}
 
 
 
}


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package codigo;
import codigo.Partido;
 
 
public class Jugador extends Empleado {
	public Jugador(String nom, String ape, String dire, int edad) {
		super(nom, ape, dire, edad);}
	private String posicion;
	private Partido partido;
 
 
 
	public void setPosicion(String p) {
		this.posicion=p;}
	public String getPosicion() {
		return posicion;}
 
 
	public void addPartido(Partido p){
		this.partido=p;}
	public Partido getPartido (){
		return this.partido;}
 
 
	public void addJugador(Jugador j) {}
	public void addEquipo(Equipo e) {}
 
 
 
 
 
}



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package codigo;
 
 
import codigo.Jugador;
import codigo.Equipo;
 
 
public class Club {
	private String nombreClub;
	private String ubicacionClub;
	private Empleado presidenteClub;
	private Equipo equipo;
	private Jugador jugador;
 
 
	public Club (String nomC, String ubiC, Empleado presiC, Equipo e){
	this.nombreClub=nomC;
	this.ubicacionClub=ubiC;
	this.presidenteClub=presiC;
	this.equipo=e;}
 
	public void setNombreClub (String nomC){
		this.nombreClub=nomC;}
	public String getNombreClub (){
		return this.nombreClub;}
 
 
	public void setUbicacionClub(String ubiC){
		this.nombreClub=ubiC;}
	public String getUbicacionClub(){
		return this.ubicacionClub;}
 
 
	public void setPresidenteClub(Empleado presiC){
		this.presidenteClub=presiC;}
	public Empleado getPresidenteClub(){
		return this.presidenteClub;}
 
 
 
	public void addJugador(){
		this.equipo.addJugador(jugador);
	}
 
 
}




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package codigo;
import java.util.ArrayList;
import codigo.Empleado;
import codigo.Jugador;
 
 
public class Equipo {
 
	private Empleado entrenador;
	private Empleado preparadorF;
	private ArrayList <Jugador> jugador;
 
	public Equipo (Partido p){
			this.jugador = new ArrayList<Jugador>();}
 
 
 
				public Empleado getEntrenador() {
					return this.entrenador;}
				public void setEntrenador(Empleado entrenador) {
					this.entrenador = entrenador;}
				public void addEntrenador(Empleado entrenador){
					this.entrenador.addEntrenador(entrenador);}
 
				public Empleado getPreparadorFisico() {
					return this.preparadorF;}
				public void setPreparadorFisico(Empleado preparadorFisico) {
					this.preparadorF = preparadorFisico;}
				public void addPreparadorF(Empleado preparadorF){
					this.preparadorF.addPreparadorF(preparadorF);}
 
 
 
	public void addJugador(Jugador jugador){
		this.jugador.add(jugador);}
	public Jugador getJugador(int i){
		return this.jugador.get(i);}
 
 
 
 
}




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package codigo;
 
import java.util.Date;
import codigo.Equipo;
import codigo.Jugador;
import java.util.ArrayList;
 
public class Partido {
 
	private Integer numPartido=0;
	private Date fecha;
	private Equipo clubLocal;
	private Equipo clubVisitante;
	private Integer resultadoPartido;
	private ArrayList <Jugador> jugador;
	private CampeonatoNacional campeonatoNacional;
 
 
	public Partido ( Date fecha, Equipo cluL, Equipo cluV, Integer resP, CampeonatoNacional c){
		this.numPartido=numP;
		this.fecha= new Date();
		this.clubLocal=cluL;
		this.clubVisitante=cluV;
		this.resultadoPartido=resP;
		this.jugador = new ArrayList <Jugador>();
		this.campeonatoNacional = c;}
 
 
		public CampeonatoNacional getCampeonatoNacional(){
			return this.campeonatoNacional;
		}
 
	public Integer getNumPartido() {
		return this.numPartido;}
 
	public Date getFecha() {
		return this.fecha;}
 
	public Equipo getClubLocal() {
		return this.clubLocal;}
	public Equipo getClubVisitante() {
		return this.clubVisitante;}
 
 
	public int getResultadoPartido() {
		return this.resultadoPartido;}
	public void setResultadoPartido(Integer resultadoPartido) {
		this.resultadoPartido = resultadoPartido;}
 
	public void addJugador (Jugador j){
		this.jugador.add(j);}
 
 
 
 
 
}


No pretendo que me den la solucion servida en bandeja, prefiero una explicacion que me permita poder aplicar los conceptos aprendidos a la sintaxis del codigo, de otra forma solo estarian perjudicando mi aprendizaje asi que desde ya muchisimas gracias por el espacio y la posibilidad de poder ampliar mi conocimiento.

Saludos =D
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder