Hola, tengo un problema con el promedio, al calcularlo me dice que es infinito, el resto del programa funciona bien, alguien sabe cual es el error?
Este es el programa: "el if seleccion, es porque es la opcion de un menu"
if (seleccion==2){
int cantidad;
float numero;
float mayor=0;
float menor=999999999;
float promedio=0;
float resultado=0;
cout << "Usted ha seleccionado opcion 2 " << endl;
cout << "ingrese la cantidad de numeros que usted desea " << endl;
cin >> cantidad;
while (cantidad > 0){
cin >> numero;
cantidad= cantidad - 1;
if (numero > mayor){
mayor = numero;
}
resultado = resultado + numero;
if (numero < menor ){
menor = numero;
resultado--;
}
}
cout << "El mayor es " << mayor << endl;
cout << "El menor es " << menor << endl;
promedio = resultado / cantidad;
cout << "El promedio es " << promedio << endl;
}
· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro (http://foro.elhacker.net/reglas.htm)
-Engel Lex
Creo que el error es porque nunca almacenaste ningún dato dentro de la variable promedio
y como la podria almacenar?
pasa esto
while (cantidad > 0){ //linea 13
cantidad= cantidad - 1; //linea 15
cuanto vale cantidad al salir del ciclo?
promedio = resultado / cantidad; //linea 31
cuanto vale cualquier numero dividido entre lo que quedó de cantidad al salir del ciclo?
por cierto es más "bonito" que uses
cantidad--
en lugar de
cantidad= cantidad - 1; //linea 15
por otro ladola linea 23 no tiene mucho sentido... si hay un numero menor le restas 1 al resultado?