C/Visual C - Problemas al ingresar un dato numérico

 
Vista:

Problemas al ingresar un dato numérico

Publicado por Jc (6 intervenciones) el 28/08/2006 05:46:44
Siguiendo con mi aprendizaje del lenguaje C, trato de realizar el siguiente programa:

#include <stdio.h>

main()
{

int NotaIngresada = 0;
int NumerodeNotas = 0;
int x;
float SumaNotas;

while (1)
{

printf( "Cuantas notas se incluiran en el calculo ? " );
scanf("%d", NumerodeNotas );
printf("\n");

if(NumerodeNotas<=0)
{
printf( "El numero de notas no es valido " );
}
else
break;
}

for (x=0; x>NumerodeNotas; x++)
{
printf( "Ingrese una nota para en calculo de promedio : " );
scanf( "%s", NotaIngresada );
SumaNotas = SumaNotas + NotaIngresada;
}

printf( "El promedio de las notas ingresada es : " );
printf(SumaNotas/NumerodeNotas);

}

Se trata de calcular la media aritmética para n notas ingresadas. En este caso, la variable NumerodeNotas, no almacena un número como yo quisiera. Con esto, la condición que quiebra el while nunca se cumple...¿?
Que estoy haciendo mal...????
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas al ingresar un dato numérico

Publicado por -.- (15 intervenciones) el 28/08/2006 06:02:42
weno esto esta mal

for (x=0; x>NumerodeNotas; x++)

x empieza en 0, mientras x > numerodenotas <-error
debe ser

x=0;x < numerodenotas

byes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

El error orifinal presiste HELP!

Publicado por Jc (6 intervenciones) el 28/08/2006 16:13:51
Efectivamente ahi había un error. La condición era:

x=0;x < numerodenotas

pero el error original persiste al no reconocer la variable numerodenotas como un dato numérico. Digo esto, pues luego de ingresarla, al mostrarla por pantalla asi...

printf( "Cuantas notas se incluiran en el calculo ? " );
scanf("%d", NumerodeNotas );
printf("\n");

... el resultado es un carácter no número, con lo que nunca sale del loop, preguntandome la cantidad de notas nuevamente.

De ante mano, gracias.

Jc
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas al ingresar un dato numérico

Publicado por Oscar (21 intervenciones) el 28/08/2006 17:33:09
El segundo parámetro de la función scanf debes añadirle & :
scanf("%d", &NumerodeNotas );

Creo que ese es un fallo.
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas al ingresar un dato numérico

Publicado por kero (45 intervenciones) el 29/08/2006 02:48:38
#include <stdio.h>

int main(void){

int NotaIngresada = 0;
int NumerodeNotas = 0;
int x;
float SumaNotas=0.0;

while (1){

printf( "Cuantas notas se incluiran en el calculo ? " );
scanf("%i",&NumerodeNotas );
printf("\n");

if(NumerodeNotas<=0){
printf( "El numero de notas no es valido " );
}else{
break;
}
}

for (x=0; x<NumerodeNotas; x++){
printf( "Ingrese una nota para en calculo de promedio : " );
scanf( "%i", &NotaIngresada );
SumaNotas = SumaNotas + NotaIngresada;
}
SumaNotas = SumaNotas/NumerodeNotas;
printf( "El promedio de las notas ingresada es : " );
printf("%f",SumaNotas);
return(0);

}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas al ingresar un dato numérico

Publicado por kero (45 intervenciones) el 30/08/2006 03:19:26
Basicamente el problema era que no inicializabas la variable SumaNotas. Siempre hay que inicializar las variables. Habia otros detalles tambien que corregi pero no eran gran cosa.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas al ingresar un dato numérico

Publicado por Jc (6 intervenciones) el 30/08/2006 05:27:01
Gracias !!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar