Podemos perfectamente tener un do-while y dentro de dicha estructura repetitiva una estructura repetitiva for. Ej. Ingresar 10 enteros y sumarlos. Luego mostrar la suma y preguntar si quiere ingresar otros 10 valores para sumarlos.
Profe esta opción podria ser valida? #include #include int main(){ int valor,promedio,n,cantidad=0; setlocale(LC_CTYPE,"spanish"); printf("\t\t\tPROMEDIO DE NUMEROS "); do{ printf("Ingrese numero [numero=0 finaliza el programa]: "); scanf("%d",&valor); n=n+valor; cantidad=cantidad+1; }while(valor!=0); cantidad=cantidad-1; promedio=n/cantidad; printf("El promedio de los numeros ingresados es: %d",promedio); getch (); return 0; }
La forma en que yo lo hice: //CARGUE NUMEROS PARA CALCULAR SU PROMEDIO, HASTA QUE UN NUMERO SEA 0, (5 NUMEROS) int main(){ float numero,suma=0,promedio,cn=0; printf("CARGUE LAS 5 CIFRAS "); do{ scanf("%f",&numero); suma=suma+numero; cn++; if(cn>=5){ promedio = suma/cn; printf("PROMEDIO = %f ",promedio);break; suma=0; cn=0; } } while (numero!=0); }
Ese if limitaria el ingreso de los numeros a solo 5, en el problema que puso el profesor dice que pueden ser mas de numeros dependiendo del usuario hasta que ponga 0
la mejor explicación!!!!
Gracias! Saludos!
Profe, se puede combinar un for con el do-while?
Podemos perfectamente tener un do-while y dentro de dicha estructura repetitiva una estructura repetitiva for.
Ej. Ingresar 10 enteros y sumarlos. Luego mostrar la suma y preguntar si quiere ingresar otros 10 valores para sumarlos.
@@diegomoissetdeespanes gracias, profe.
Profe esta opción podria ser valida?
#include
#include
int main(){
int valor,promedio,n,cantidad=0;
setlocale(LC_CTYPE,"spanish");
printf("\t\t\tPROMEDIO DE NUMEROS
");
do{
printf("Ingrese numero [numero=0 finaliza el programa]: ");
scanf("%d",&valor);
n=n+valor;
cantidad=cantidad+1;
}while(valor!=0);
cantidad=cantidad-1;
promedio=n/cantidad;
printf("El promedio de los numeros ingresados es: %d",promedio);
getch ();
return 0;
}
Perfecto, podemos disminuir uno el contador 'cantidad' después del do/while.
@@diegomoissetdeespanes gracias profe, saludos
La forma en que yo lo hice:
//CARGUE NUMEROS PARA CALCULAR SU PROMEDIO, HASTA QUE UN NUMERO SEA 0, (5 NUMEROS)
int main(){
float numero,suma=0,promedio,cn=0;
printf("CARGUE LAS 5 CIFRAS
");
do{
scanf("%f",&numero);
suma=suma+numero;
cn++;
if(cn>=5){
promedio = suma/cn;
printf("PROMEDIO = %f
",promedio);break;
suma=0;
cn=0;
}
}
while (numero!=0);
}
Ese if limitaria el ingreso de los numeros a solo 5, en el problema que puso el profesor dice que pueden ser mas de numeros dependiendo del usuario hasta que ponga 0
Yo puse esto:
#include
#include
int main ()
{
int n, i=0, sum=0;
float prom=0;
do{
printf("Ingresa un numero: ");
scanf("%i", &n);
sum=sum+n;
i++;
}while (n!=0);
if(sum==0)
{
printf("No se ha ingresado ningun valor. ");
}
else
{
prom=sum/i;
printf("--> Promedio: %f", prom);
}
getch();
return 0;
}