[ Foro de Java ]

Ayuda con un ejercicio de programacion en java

22-May-2022 19:52
Miguel Ángel Iglesias De La Flor
1 Respuestas

Un cliente nos solicita lo siguiente:

Necesita una base de datos (en MySQL o mediante creación de objetos JAVA) para la liga de Futbol Sala de Marchamalo (Guadalajara), que contendrá la siguiente información:

Una tabla con los equipos de la liga (mínimo 4). Con los siguientes campos:

IdEquipo

Nombre equipo

Presidente

Una tabla con los jugadores. Al menos 5 jugadores por equipo (1 portero, 2 defensas y dos delanteros), en la tabla deberá aparecer mínimo:

Idjugador

Apellidos

Nombre

Posición
Equipo

Una tabla de árbitros, en la que aparecerá lo siguiente, mínimo 2.

Idarbitro.

Apellidos

Nombre



Con esta base de datos, el cliente quiere que se generen los sorteos de los árbitros para cada uno de los partidos. Y que se muestre en un documento, el nombre de los equipos que juegan los partidos de cada jornada, los jugadores contendientes y el árbitro, que se designará de forma aleatoria entre los 2 que debe haber en la tabla. Un árbitro no puede repetir partido en la misma jornada. (3 puntos)

Como extra, el cliente desea que el calendario salga en una interfaz por pantalla. (1 punto)



Resumen: Después de programar debe obtenerse el archivo TXT con el calendario y la interfaz. Se valorarán todos los pasos dados, aunque no se llegue al resultado final.






ALGUNO DE VOSOTROS ME PODRIA AYUDAR A SOLUCIONARLO?


ESTE ES UN TRABAJO QUE CUENTA MUCHO PARA LA NOTA DEL EXAMEN....


GRACIAS DE ATENMANO


27-May-2022 22:56
Angel Lloroso

Hola Miguel, espero que mi respuesta llegue a tiempo, he estado varios días picando el codigo aunque desgraciadamente no puedo enviarte la base de datos y deberás hacerla tú import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.RandomAccessFile;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

public class testConexion {

public static void main(String[] args) throws IOException {
conexion conexion = new conexion();
Connection cn = null;
Statement stm = null;
ResultSet rs = null;
String Partido1 = "";
String Partido2 = "";
String Arbitros = "";


File file1 = new File("PeriPerolas.txt");

FileWriter fw = new FileWriter(file1);

PrintWriter pw = new PrintWriter(fw);


try {
cn = conexion.conectar();
stm = cn.createStatement();
rs = stm.executeQuery("SELECT Nombre FROM equipos");
ArrayList<String> list= new ArrayList<String>();
ArrayList<String> support_list= new ArrayList<String>();
ArrayList<String> partidos= new ArrayList<String>();

while (rs.next()){
list.add(rs.getString(1));
}

ArrayList<String> equiposOrdenados= new ArrayList<String>();

equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(3));

equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(0));

rs = stm.executeQuery("SELECT Nombre FROM árbitros");
ArrayList<String> arbitros= new ArrayList<String>();
ArrayList<String> support_arbitros= new ArrayList<String>();
while (rs.next()){
arbitros.add(rs.getString(1));
}

rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 1");
ArrayList<String> jugadoresMarchamalo= new ArrayList<String>();
while (rs.next()){
jugadoresMarchamalo.add(rs.getString(1));
}

rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 2");
ArrayList<String> jugadoresMurcia= new ArrayList<String>();
while (rs.next()){
jugadoresMurcia.add(rs.getString(1));
}

rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 3");
ArrayList<String> jugadoresMadrid= new ArrayList<String>();
while (rs.next()){
jugadoresMadrid.add(rs.getString(1));
}

rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 4");
ArrayList<String> jugadoresBarcelona= new ArrayList<String>();
while (rs.next()){
jugadoresBarcelona.add(rs.getString(1));
}

int equiposRestantes = 4;
int numJornada = 1;

for (int x=0; x<24; x++) {

String periPerolas = ".";

//System.out.println("Jornada " + numJornada + ": ");
pw.println("Jornada " + numJornada + ": ");
pw.println("");
int arbitrosRestantes = 2;

for (int n=0; n<=1; n++) {

int a = (int) (Math.random() * arbitrosRestantes);

if (n == 0) {

//esto es para copiar el codigo
//System.out.println("Partido 1: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
pw.println("Partido 1: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
} else {
//System.out.println("Partido 2: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
pw.println("Partido 2: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
}

for (int w = 0; w<=1; w++) {

if (equiposOrdenados.get(x).equals("Marchamalo Futsal") ) {
pw.println("   Plantilla del Marchamalo: " + jugadoresMarchamalo + periPerolas);
}
if (equiposOrdenados.get(x).equals("Murcia") ) {
pw.println("   Plantilla del Murcia: " + jugadoresMurcia + periPerolas);
}
if (equiposOrdenados.get(x).equals("Real de Madrid") ) {
pw.println("   Plantilla del Madrid: " + jugadoresMadrid + periPerolas);
}
if (equiposOrdenados.get(x).equals("Barcelona") ) {
pw.println("   Plantilla del Barcelona: " + jugadoresBarcelona + periPerolas);
}
if (w==0) {
x++;
}
}
x++;
//System.out.println("    Árbitro: " + arbitros.get( a));
pw.println("    Árbitro: " + arbitros.get( a));
pw.println("");
support_arbitros.add(arbitros.get(a));
arbitros.remove(a);
arbitrosRestantes -= 1;
}
numJornada ++;
arbitros.add(support_arbitros.get(0));
arbitros.add(support_arbitros.get(1));
support_arbitros.remove(0);
support_arbitros.remove(0);
x-=1;
}

pw.close();

} catch (SQLException e) {
e.printStackTrace();
}
}
}






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)