sacar la moda
keria pedir un favor kien me puede ayudar a colokar la moda en un programa alguna formula o algo please!!!!
La moda de una colección de elementos es el elemento que más se repite. Si la colección está desordenada, necesitas crearte una colección auxiliar, para contener los elementos, y cada vez que se inserte uno, incrementar su frecuencia, que debemos almacernar en un array, por ejemplo. si la colección está ordenada, es mucho más fácil y eficiente. Sólo hemos de almacener una referencia a la moda provisional, y al segundo elemento con mayor frecuencia, y sus frecuencias, de modo que cuando la frecuencia de la moda sea mayor que la suma de la frecuencia y la de los elementos que queden por conocer. AsÃ, si tienes un array de tamaño n y los n/2+1 primeros elementos son iguales, ya sabemos que es la moda sin necesidad de recorrerlos todos. Espero que te sirva.
como dices tu hacerme una coleccion a parte de la ke ya tengo xq es un arreglo el ke tengo y de eso aleatoriamente tengo ke sacar la moda
si tu vector es de enteros osea lo declaraste global asi:
int v[MAX];
int dimension //dimension es la cantidad de //elementos de tu vector
entonces:
int moda( )
{
int cantrep=0, masrep;
for( int x=0; x<dimension; x++ )
{
if( cantrepetidos(v[x])> cantrep )
{
cantrep=cantrepetidos( v[x] );
masrep=v[x];
}
}
return( masrep );
}
//-----aqui esta la funcion cantrepetidos----
int cantrepetidos( int elem )
{
int cant=0;
for( int x=0; x<dimension; x++ )
{
if( v[x]==ele )
cant++;
}
return cant;
}
int v[MAX];
int dimension //dimension es la cantidad de //elementos de tu vector
entonces:
int moda( )
{
int cantrep=0, masrep;
for( int x=0; x<dimension; x++ )
{
if( cantrepetidos(v[x])> cantrep )
{
cantrep=cantrepetidos( v[x] );
masrep=v[x];
}
}
return( masrep );
}
//-----aqui esta la funcion cantrepetidos----
int cantrepetidos( int elem )
{
int cant=0;
for( int x=0; x<dimension; x++ )
{
if( v[x]==ele )
cant++;
}
return cant;
}