Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/10/2010, 09:36
RyoAkiyama
 
Fecha de Ingreso: octubre-2010
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: comparar enteros en un array

Hola que tal, mira, es buena tu idea, puedes meter tanto las victorias como los puntos en dos arreglos. y despues compararlos, y esto lo puedes hacer mediante un ciclo for. Con esto te facilita las muchas comparaciones que tienes que hacer, ya que vas comparando el primero con el segundo, tercero, ... sexto, y si les gano a todos, ya rompes el ciclo, por que el es el mayor. Si no fue, pasas con el segundo y asi consecutivamente. Cuando sean iguales las victorias, comparas los puntos de esos equipos y dependiendo del que gane, sera el mayor hasta el momento. Mira te dejo esto, espero te ayude sale?

package futbol;

import java.util.*;


public class futbol {

int []Victorias = new int[6];
int [] Puntos=new int[6];

public int[] addVictorias()
{
Victorias[0]=1;
Victorias[1]=2;
Victorias[2]=3;
Victorias[3]=4;
Victorias[4]=15;
Victorias[5]=15;
return Victorias;
}

public int[] addPuntos()
{
Puntos[0]=4;
Puntos[1]=5;
Puntos[2]=8;
Puntos[3]=10;
Puntos[4]=16;
Puntos[5]=9;

return Puntos;
}


public static void main(String[] args) {
futbol partido=new futbol();
//creamos los arreglos de puntos y victorias
int []V = new int[6];
int []P = new int[6];
//llamamos los metodos de la clase que permiten sumar puntos y victorias
V=partido.addVictorias();
P=partido.addPuntos();
//variable que determina cual es el mayor
int candado=0;
//variable que guarda cual es el mayor
int mayor=0;
//empezamos a comparar equipo por equipo
for(int x=0;x<6;x++)
{
candado=0;
for(int y=0;y<6;y++)
{
//No puede comparar con si mismo
if(x!=y)
{
// si el equipo x tiene mas victorias que y
if (V[x]>V[y])
{
//si esta variable llega a 5, significa que el equipo x les gano a todos
//por lo tanto es el mayor
candado++;
}
else if(V[x]==V[y])
{
//si los puntos de x son mayores que y
if(P[x]>P[y])
{
candado++;
}
//si no rompemos bucle de , por que no tiene caso seguir comparando
//ya que e smenor
else
{
y=7;
}
}
else
{
//si no tiene mas victorias, no es el mayorpara romper el ciclo de y
//por lo tabto rompemos ciclo por que no tiene caso seguir comparando
y=7;
}
}
}
if(candado==5)
{
//significa que el equipo x es mas grande que todos
//rompemos bucle con x=7, por que al ser el mayor, ya nadie le gana
//y almacenamos el equipo en la variable mayor, pero recordamo que en los
//arreglos empezamos por 0, asi que para imprimer que equipo gano, seria
//conveniente escribir mayor +1, como se muestra a continuacion

mayor=x;
x=7;

}
}
System.out.println("El equipo con "+V[mayor]+" victorias y con "+P[mayor]+" puntos es el equipo "+(mayor+1));
// para el codigo, es el equipo 4, por que existe un equipo 0, pero realmente el ganador es el 5
}

Te lo dejo comentado, cualquier duda avisame. No se como determinas las victorias y puntos de cada uno, aqui lo hago d euna manera muy sencilla, seria cuestion de que lo adaptaras para como lo manejes tu.

Cuidate, saludos !!