Título: media con arreglos Publicado por: criser20 en 4 Abril 2014, 07:01 am Código: no entiendo pq no me funciona esto para sacar la media de un arreglo dinamico, me podrian decir que tiene mal o algun consejo? Título: Re: media con arreglos Publicado por: eferion en 4 Abril 2014, 08:22 am *Nota, si a la etiqueta de apertura de "code", le pones =c te coloreará el código con formato C.
Código
Vamos a ver, tienes n que es una variable no inicializada... y después tienes arreglo[n]... mal vamos. Además, el compilador no te garantiza que las variables que vayan a crear en orden ( de izquierda a derecha ), en msvc al menos es al revés (primero se "crea" arreglo[n], luego n y finalmente opc ), así que ya sabes. Por otro lado, arreglo[n] no es, para nada, un arreglo dinámico. La palabra dinámico se reserva para cuando se hace uso de memoria dinámica, es decir, cuando hay una reserva de memoria con malloc o calloc. No es tu caso. Tu problema de código se soluciona sustituyendo arreglo[n] por arreglo[MAX], pero ya te digo, no es un arreglo dinámico. Título: Re: media con arreglos Publicado por: leosansan en 4 Abril 2014, 16:31 pm Además de lo indicado por eferion en cuanto a que no es un arreglo dinámico debes declarar como int la variable arr después de introducir el valor de n:
Código
Y luego en la función media sería: Código
Y para que la media de un valor correcto, es decir con decimales que es lo usual en estos casos, como tienes declarados como int a x y arr debes hacer un cast a float e imprimir como %f o %g: Código
Por cierto, observa que en el for he quitado las llaves. Siempre que el cuerpo de un for, if, etc tenga una sola línea no son necesarias. También he puesto una pausa para ver el resultado antes de que se limpie la pantalla con el system("CLS"). ¡¡¡¡ Saluditos! ..... !!!! (http://st.forocoches.com/foro/images/smilies/aaaaa.gif) Título: Re: media con arreglos Publicado por: criser20 en 4 Abril 2014, 18:46 pm gracias a ambos ya lo resolvi de verdad muchas gracias
|