Java - Ayuda con arrays :c

 
Vista:
Imágen de perfil de Roberto
Val: 3
Ha aumentado su posición en 6 puestos en Java (en relación al último mes)
Gráfica de Java

Ayuda con arrays :c

Publicado por Roberto (2 intervenciones) el 20/03/2017 16:58:32
Necesito ayuda porque la verdad ando perdido, el problema es, crear un programa para leer la altura de N personas que se almacenarán en un arreglo y calcular la altura media, luego calcular cuantas personas tienen una altura superior a la media y cuántas una altura inferior a la media. Y el valor de N se pide por el teclado y debe ser entero positivo.

De antemano muchas gracias, espero puedan ayudarme
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

Hay varios tipos de array:

Publicado por Jordi (4 intervenciones) el 20/03/2017 23:36:25
El array básico por así decirle sería el que se declara como "tipo [ ] = new tipo [capacidad];" Lo que pasa es que para manejar los datos tienes que espabilarte. Luego hay algunas clases como "ArrayList" que tienen métodos que facilitan el manejo de los datos.

Dicho esto voy a proceder a tratar de responder a "¿Qué es un array?" de la forma más entendible posible.
Un array es una cosa de java que te deja tener varias variables "apretaditas" en una sola (el array). Se puede declarar de varias formas pero yo te diré las dos que me sé:

1) tipo_de_dato [ ] nombe_del_array = new tipo_de_dato [ espacio_total_del_ array ];
2) tipo_de_dato [ ] = { dato_1, dato_2, dato_3, etc... };

Para acceder a uno de los datos del array tienes que poner el nombre del array seguido de las llaves y la posición en la que este se encuentra "nombre_array [ posición ]" siempre teniendo en cuenta que la primera posición es 0 y a la última de debería poder acceder si no me equivoco con -1.

Tras esta definición me gustaría comentarte que para ir introduciendo datos un array de este tipo no creo que sea muy "recomendable" ya que una vez instanciado, por lo que yo sé no se puede cambiar el tamaño total, por lo que si se llena la hemos liado y tampoco queda demasiado "profesional" crear un array de dos millones de posiciones ( int [ ] a = new int [ 2000000]; ). Para estos casos puedes usar algo llamado "Arrays redimensionables" que básicamente tienen métodos como add(); que permiten ir añadiendo cosas y que este se vaya expandiendo solo. Si buscas sobre esto encontrarás un montón de artículos que hablan de ello. (¡ATENCIÓN! Se declaran distinto de los normales.)

Por lo demás que dices de las características de tu ejercicio supongo que si estás haciendo arrays ya dominaréis los bucles for while e if.
Voy a dejarte una pequeña idea de cómo podrías montarlo un poco por encima para encontrar cuantas personas están por encima de la media.

1) Montas un aray redimensionable donde guardar las alturas.
2) Montas un método for para recorrer toda la lista, que sume las alturas y obtenga la cantidad de alturas sumadas. Luego que divida la suma de las aturas por la cantidad de alturas sumadas y tendrás la media.
3) Luego te montas un bucle que vaya viendo valor por valor de la lista y si es mayor que la media sume un punto a una variable que será la cantidad de personas por encima de la media.
4) Si quieres ir más allá puedes montar una clase que contenga el nombre de la persona y la altura con los métodos getAltura y getNombre. Si te lo montas bién luego puedes saber quiénes están por encima de la media.

Solo tienes que ponerte creativo y te saldrá solo el ejercicio...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar