tenemos este codigo pero marca error me podrian ayudar gracias
#include<stdio.h>
#include<conio.h>
main()
{
int array[5],i,rango,mas_grande,valor_moda,frecu;
int frec[5]={0};
printf ("Digite los valores del arreglo:\n\n");
scanf ("%d",&array[i]);
for (i=0;i<5;i++){
}
for (i=0;i<5;i++){
frec[array[i]]++;
}
for (rango=1;rango<=5;rango++)
{
if (frec[rango]>mas_grande){
mas_grande=frec[rango];
valor_moda=rango;
}
}
printf ("El valor moda es %d",valor_moda);
getch ();
}
que es lo k falla o k parte falla?
En tu scanf() por ejemplo:
scanf ("%d",&array[i]);
Estas usando la variable i, la cual todavia no le has dado un valor. Si fuese una variable global de foma implicita quedaria inicializada con el valor cero en su declaracion. Pero en este caso es una variable local dentro de main() con lo que su valor sera un valor basura.
Antes de usar la variable asignale algun valor.
Cita de: pacoperico en 2 Marzo 2013, 20:22 PM
En tu scanf() por ejemplo:
scanf ("%d",&array[i]);
............................
El problema más bien es de falta de atención ya que ese scanf tendría que estar dentro del for para "captar" los números a introducir.
Te queda por mejorarlo para el caso en que más de un valor sea moda, pero te servirá si sólo hay uno:
#include<stdio.h>
#define N 8
int main(){
int array[N]={0},i,j,rango,mas_grande=0,valor_moda,frecu,cont=0;
int frec[N]={0};
printf ("Digite los valores del arreglo:\n\n");
for (i=0;i<N;i++){
printf ("numero %d: ",i+1);
scanf ("%d",&array[i]);
}
for (i=0;i<N;i++){
for (j=0;j<N;j++){
if (array[j]==array[i]){
frec[i]++;
}
}
}
for (i=0;i<N;i++)
if (frec[i]>mas_grande){
mas_grande=frec[i];
valor_moda=array[i];
}
printf ("El valor moda es %d",valor_moda);
getch ();
return 0;
}
Saluditos!. ...(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)
gracias man muchas gracias