En un array de 50, encontrar:
- El mayor
- El menor
- La moda
- Ordenarlos de mayor a menor y viceversa
- Encontrar en que posición se halla el mayor, menor y moda
Ya hice casi todos, solo me falta poder encontrar las posiciones, aquí les muestro como va mi código, por favor no utilicen funciones que no quiero usarlas todavía jeje gracias
Código C:
Ver original
#include <stdio.h> #include <time.h> int main(int argc, char *argv[]) { int mayor=0, menor=50, i, x=0, cmoda=0, con=0,k,moda,y=0,ord,z; float media; int num[50]; //Iniciamos la función para randomizar //Trabajamos el array para obtener mayor, menor, media y moda for(i=0;i<50;i++) { if(i==25) } for(i=0;i<50;i++) { media += num[i]; //Con esto obtenemos el mayor y el menor if(mayor < num[i]) mayor=num[i]; posmay=i; if(menor > num[i]) menor=num[i]; //Comparamos el vector randomizado con uno normal para ver cuantos numeros se repiten //Si se repiten con aumenten en 1 cada vez con=0; for(k=0;k<50;k++) { if(i!=k && num[i]==num[k]) con++; if(con>cmoda) { moda=num[i]; cmoda=con; } } } //Ordenamiento por metodo burbuja de mayor a menor for (i=0; i<50-1; i++) { for (z=i+1; z<50; z++) { if (num[i] < num[z]) { ord = num[i]; num[i] = num[z]; num[z] = ord; } } } //Lo imprimimos for(i=0;i<50;i++) { if(i==24) } //Ahora de menor a mayor for (i=0; i<50-1; i++) { for (z=i+1; z<50; z++) { if (num[i] > num[z]) { ord = num[i]; num[i] = num[z]; num[z] = ord; } } } for(i=0;i<50;i++) { if(i==24) } if(moda>1) else return 0; }
Gracias de antemano