Hola, quiero calcular la media aritmética con el bucle while y usando un centinela.
No me calcula bien el promedio, si pudierais decirme que fallo hay.
#include<iostream>
using namespace std;
int main(){
double suma,n;
int contador=0;
cin>>n;
while(n!=-1){
suma=suma+n;
contador=contador+1;
cin>>n;}
cout<<suma/contador<<endl;
system("PAUSE");
return 0;
}
Un saludo
Lo he echo bien :D,
gracias de todos modos.
Me ha dado tiempo a ver tu fallo, y era que la linea
cin>>n;
la tenias fuera del bucle while.
Saludos
Cita de: Caster en 8 Noviembre 2012, 18:52 PM
Me ha dado tiempo a ver tu fallo, y era que la linea
cin>>n;
la tenias fuera del bucle while.
Saludos
No. Tiene otro dentro del bucle.
El único problema que le veo es que la variable "suma" no está inicializada a 0 (no creo que haya problema, pero debería estarlo :P).
Por lo demás, aparentemente está bien.
Su mensaje esta editado, la primera vez que habia posteado, el que esta dentro del bucle, lo tenia fuera, y por eso digo que me dio tiempo a verlo.
Saludos
Cita de: Caster en 8 Noviembre 2012, 18:58 PM
Su mensaje esta editado, la primera vez que habia posteado, el que esta dentro del bucle, lo tenia fuera, y por eso digo que me dio tiempo a verlo.
Saludos
Ups! Perdón entonces :P
Con system creo que necesitas cstdlib:
#include<iostream>
#include <cstdlib>
using namespace std;
int main(){
double suma=0,n;
int contador=0;
cout << "Introduzca numero: " ;
cin>>n;
while(n>0){
suma+=n;
contador+=1;
cout << "Introduzca numero: " ;
cin>>n;
}
cout<<suma/contador<<endl;
system("pause");
return 0;
}
Saludos!.