Java - Determinar mayor entre números

 
Vista:
Imágen de perfil de Miguel

Determinar mayor entre números

Publicado por Miguel (8 intervenciones) el 19/08/2006 07:26:59
Hola, quisiera saber si existe alguna función en java para determinar cual es el mayor o el menor entre un determinado grupo de números.

Desde ya muchas gracias por su atención. Salu2
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

RE:Determinar mayor entre números

Publicado por Giorgio (3 intervenciones) el 19/08/2006 07:42:40
En java puedes utilizar el ...
Math.max(int num1,int num2), sea de tipo int, double o float, te devuelve el mayor valor de los dos que ingreses, o bien el Math.min(int num1,int num2), que te retorna el menor de los dos numeros ingresados. Pero lo mejor es que utilizes una estructura repititiva como el for el do-while o while, preferible q uses para este caso el while, para q vallas actualizando el valor del numero mayor ... em un arreglo vector lista, etc lo que estes usando. Espero te sirva, si deseas más información solo pregunta, en lo posible tratare de solucionar tu problema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Determinar mayor entre números

Publicado por Ascari Romo (36 intervenciones) el 19/08/2006 17:26:34
Hola:

Es muy fácil y como ya te lo sugieren, con algún ciclo for o do while metiendo los valores en un arreglo puedes encontrar facilmente un valor máximo y minimo.

Lo primero seria que el programa preguntara el número de valores que se desea introducir:

do
{
System.out.print("Número de valores que desea introducir: ");
nElementos = Leer.datoInt();
}
while (nElementos < 1);

Leer.datoInt() es un método definido por el programador, en tu caso solo deberas hacer uso de un BufferReader (supongo que sabes como leer datos desde el teclado en caso contrario puedes hacer uso de JOptionPane, solo deberias convertir a numero antes de usar los valores)

Luego creas el arreglo de dimensión nElementos y declaras otras variables que te ayudaran:

float[] dato = new float[nElementos];
int i = 0; // subíndice
float max, min; // valor máximo y valor mínimo

Posteriormente preguntas por los datos:

for (i = 0; i < dato.length; i++)
{
System.out.print("dato[" + i + "]= ");
dato[i] = Leer.datoFloat();
if (Float.isNaN(dato[i])) break; // salir del bucle
}

isNan es un método de Float que te devuelve un true en caso de que el valor introducido sea NO numerico, si esto es asi sale del programa con el break; en caso contrario continua.

Finalmente ua tienes tu arreglo con x numero de valores, ahora solo resta buscar el mayor y menor:

nElementos = i; // número de valores leídos
// Obtener los valores máximo y mínimo
if (nElementos > 0)
{
max = min = dato[0];
for (i = 0; i < nElementos; i++)
{
if (dato[i] > max)
max = dato[i];
if (dato[i] < min)
min = dato[i];
}

Solo muestras con un println a max y min que te devolvera el valor maximo y minimo respectivamente.

Saludos!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Determinar mayor entre números

Publicado por Jefree Alexander (1 intervención) el 19/08/2006 21:15:25
El algoritmo para encontrar el mayor dato en un vector es tipicamente el siguiente


int mayor(int [] vector)
{
int mayor = vector[0]; //suponemos que el primer elemento es el mayor
for(int i = 1; i<vector.length; i++)
{
if(vector[i]>mayor)mayor = vector[i];
}
return mayor;

}

la funcion se usaria asi:

.........
int [] vectorDeNumeros = new int[10]; //por ejemplo
.......
.......
int numeroMayor = mayor(vectorDeNumeros);
.........
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar