elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / MODA en: 13 Octubre 2018, 17:27 pm
Hola, tengo un problema tratando de crear un programa en Cque lea multimodas, dado que al leer cuando se repiten las modas, lo hace muy bien, pero cuando no hay moda, me las lee a todas; es decir: ingreso 1,2,3,4,5 y me tira como moda 1,2,3,4,5 en vez de tirarme un NO HAY MODA. Si me pudieran ayudar a encontrar en qué estoy fallando se los agradecería!  ;-)


Código:
#include <stdio.h>

int main() {
int i,l,j,aux=0;
printf("Ingrese la cantidad de números que desea ingresar:");
scanf("%d",&l);
int v[l],c[l],MODA[l];
printf("Ingrese los números:");
for(i=0;i<l;i++){
scanf("%d",&v[i]);
}
for(i=0; i<(l-1); i++){
for(j=i+1; j<l; j++) {
if(i!=j && v[i]==v[j]){
{aux=v[j];
v[j]=v[i];
v[i]=aux;}
}
}

}
//ARREGLO DE MODA EN 1
for(i=0;i<l;i++){
MODA[i]=0;
}
/* COMPARACION */
for (i=0;i<(l-1);i++){
for(j=i+1;j<l;j++){
if(v[i]==v[j]){
MODA[i]=MODA[i]+1;
}
}
}
for (i=0;i<l;i++){
c[i]=MODA[i];
}
for (i=0;i<(l-1);i++){
for(j=i+1;j<l;j++){
if(MODA[j]<MODA[i]){
aux=MODA[j];
MODA[j]=MODA[i];
MODA[i]=aux;
}
}
}
for (i=0;i<l;i++){
if(c[i]==1){
aux++;
}
}
if(MODA[l-1]==MODA[l-2]){
printf("Las modas son:\n");
for(i=0;i<l;i++){
if(MODA[l-1]==c[i]){
printf("%i\n",v[i]);
}
}
}
else {
if(MODA[l-1]!=MODA[l-2]){
printf("Las modas son:\n");
for(i=0;i<l;i++){
if((MODA[l-i]==c[i]) && aux<1){
printf("%i",v[i]);
}
}
}
else {
if (aux==l){
printf("No hay moda.");
}
}
}
return 0;
}
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines