Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Logica arreglo de frecuencia

Estas en el tema de Logica arreglo de frecuencia en el foro de Java en Foros del Web. Buenos días: Tengo el siguiente codigo: public class InicArreglo { public static void main(String[] args) { int [] respuestas={1,2,5,4,3,5,2,1,3,3,1,4,3,3,3,2,3,3,2} ; int[] frecuencia = new int[6]; ...
  #1 (permalink)  
Antiguo 11/06/2015, 04:37
 
Fecha de Ingreso: febrero-2007
Mensajes: 43
Antigüedad: 16 años
Puntos: 0
Pregunta Logica arreglo de frecuencia

Buenos días:

Tengo el siguiente codigo:

public class InicArreglo
{
public static void main(String[] args)
{
int [] respuestas={1,2,5,4,3,5,2,1,3,3,1,4,3,3,3,2,3,3,2} ;

int[] frecuencia = new int[6];

for(int respuesta=0;respuesta<respuestas.length;respuesta+ +)
++frecuencia[respuestas[respuesta]];

System.out.printf("%s%10s\n","Calificacion","Frecu encia");

for(int calificacion=1;calificacion<frecuencia.length;cali ficacion++)
System.out.printf("%6d%10d\n", calificacion,frecuencia[calificacion]);
}
}

El arreglo frecuencia cuenta el numero de veces que se repiten los elementos del arreglo respuestas, mi duda radica en por que el arreglo frecuencia se inicializa con 6 elementos para mi se debería inicializar con 5 de acuerdo a los elementos del arreglo respuesta. No entiendo la logica. Agradezco la ayuda para entenderlo. Muchas gracias.
  #2 (permalink)  
Antiguo 11/06/2015, 04:49
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 13 años, 9 meses
Puntos: 306
Respuesta: Logica arreglo de frecuencia

El que ha hecho ese código ha decidido que la mejor forma de hacerlo es que la posición del array de frecuencia se corresponda con el número del que se da la frecuencia.

Si quieres dar la frecuencia de los números del 1 al 5, necesitas un array de 5 posiciones, pero en java los array empiezan en el 0, por lo que el 1 estaría en la posición 0 en vez de en la posición 1.

6 posiciones
{0,1,2,3,4,5}
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #3 (permalink)  
Antiguo 11/06/2015, 10:03
(Desactivado)
 
Fecha de Ingreso: marzo-2012
Mensajes: 366
Antigüedad: 10 años, 10 meses
Puntos: 31
Respuesta: Logica arreglo de frecuencia

Cita:
Iniciado por Xerelo Ver Mensaje
6 posiciones
{0,1,2,3,4,5}
Y a la hora de sacar las resultados, la posición 0 (la que contiene el nº de veces que se repite el 0) se la salta. Por eso en el for es desde que calificación=1, en vez de =0.
  #4 (permalink)  
Antiguo 12/06/2015, 13:59
 
Fecha de Ingreso: febrero-2007
Mensajes: 43
Antigüedad: 16 años
Puntos: 0
De acuerdo Respuesta: Logica arreglo de frecuencia

Muchachos muchas gracias... super entendido

Etiquetas: arreglo, frecuencia, logica
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:14.