C/Visual C - Más de una MODA

 
Vista:
sin imagen de perfil

Más de una MODA

Publicado por Misraim (1 intervención) el 03/11/2021 21:28:28

, ya es funcional el código pero que sentencias utilizar para que aparezca el resultado si hay mas de una moda



#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define size 20
void media (int[]);
void mediana (int []);
void moda (int[],int[]);
void Odecendente(int[]);
void impresionArreglo(int[]);

main()
{
int frecuencia[50]={0},
respuesta[size]={ 30, 32, 34, 35, 38, 40, 30, 34, 35, 36,
30, 32, 41, 43, 34, 36, 37, 38, 36, 40};

media(respuesta);
mediana(respuesta);
moda(frecuencia,respuesta);
return 0;
}
void media (int resp[])
{
int j, total=0;
printf("----------------------------------------------------------------------------------\n");
printf("%s\n","MEDIA");
printf("----------------------------------------------------------------------------------\n");
for(j=0; j<=size-1;j++)
total +=resp[j];

printf("La media es el promedio del valor de los datos de estudio.\n");
printf("El numero de datos estudiado es: %d.\nLa suma de datos estudiados es:%d\n"
"El valor de la media para esta carrera es:%0.4f\n\n",
size,total,(float)total/size);
}
void mediana(int resp[])
{
float mediana;
int x,y;
printf("-----------------------------------------------------------------------------------\n");
printf("%s\n","MEDIANA");
printf("-----------------------------------------------------------------------------------\n");
printf("La mediana representa el valor de la variable de posicion central\n en un conjunto de"
"datos ordenados.\n\n");
printf("El conjunto de datos no ordenados es:\n");
impresionArreglo(resp);
printf("\nEl conjunto de datos ordenados es:\n");
Odecendente(resp);

}

void moda (int freq[], int resp[])
{
int clasificacion, j, h, el_mas_grande=0, valor_de_moda=0;


printf("-----------------------------------------------------------------------------------\n");
printf("%s\n","MODA");
printf("-----------------------------------------------------------------------------------\n");
printf("La moda es el valor mas frecuente\n\n");
for(clasificacion=30; clasificacion<=43; clasificacion++)
freq[clasificacion]=0;
for(j=0; j<=size-1;j++)
++freq[resp[j]];

printf("%s%17s%19s\n\n",
"RESPUESTA","FRECUENCIA","HISTOGRAMA");
for (clasificacion=30; clasificacion<=43;clasificacion++)
{
printf("%8d%11d ",clasificacion, freq[clasificacion]);
if(freq[clasificacion]>el_mas_grande){
el_mas_grande=freq[clasificacion];
valor_de_moda=clasificacion;

}
for(h=1;h<=freq[clasificacion];h++)
printf("*");
printf("\n");
}

printf("\nLa moda para esta carrera es: %d que ocurrio: "
"%d veces.\n", valor_de_moda,el_mas_grande);


}
void Odecendente(int a[])
{
float mediana;
int x,y;
int pasar, i, sostener;
for(pasar=1;pasar<=size-1;pasar++)
for(i=0;i<=size-2;i++)

if (a[i]>a[i+1]){
sostener=a[i];
a[i]=a[i+1];
a[i+1]=sostener;
}

for(i=0;i<=size-1;i++){
if(i % 10==0)
printf("\n");
printf("%4d",a[i]);
}
if((size%2)==0){

x=size/2;
y=(size/2)-1;
mediana= (a[x]+a[y]);
printf("\n\nPara esta carrera la mediana es: %.4f\n\n",mediana/2);}
else
printf("\n\nPara esta carrera la mediana es: %.4f\n\n",a[size/2]);

}

void impresionArreglo(int a[])
{
int j;
for(j=0; j<=size-1; j++){
if(j % 10==0)
printf("\n");
printf("%4d",a[j]);
}
}
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