Dev - C++ - Ayuda con código obtención de promedio

 
Vista:

Ayuda con código obtención de promedio

Publicado por Hector (14 intervenciones) el 15/08/2020 00:34:37
Me pueden ayudar al correr la siguiente linea de cogido me arroja como resultado 0

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>
#include <conio.h>
 
int main()
{
    int a,b,c,d,e;
    float promedio;
 
 
    printf("Introduce la primera calificacion:");
    scanf("%i", &a);
    printf("Introduce la segunda calificacion:");
    scanf("%i", &b);
    printf("Introduce la tercera calificacion:");
    scanf("%i", &c);
    printf("Introduce la cuarta calificacion:");
    scanf ("%i", &d);
    printf("Introduce la quinta calificacion:");
    scanf ("%i", &e);
    promedio=(a+b+c+d+e)/4;
    printf("\nPromedio=%i", promedio);
 
getch( );
 
system("pause");
 
}
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
Imágen de perfil de Kabuto
Val: 73
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con código obtención de promedio

Publicado por Kabuto (18 intervenciones) el 15/08/2020 01:11:51
Se debe a que promedio es un float.
Pero tú en el printf, le estás diciendo que ha de mostrar un int

1
printf("\nPromedio=%i", promedio);

Si cambias esa i por una f, ya si mostrará el resultado

1
printf("\nPromedio=%f", promedio);

Sin embargo, verás que sale con muchos decimales y no necesitamos mostrar tantos.
Podemos pedirle que lo redondee a solo dos decimales:

1
printf("\nPromedio=%.2f", promedio);
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

Ayuda con código obtención de promedio

Publicado por Adrian (14 intervenciones) el 15/08/2020 01:16:33
Te agradezco compañero pero ahora al correr el programa me da como resultado solo 10
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
Imágen de perfil de Rodrigo
Val: 1.375
Plata
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con código obtención de promedio

Publicado por Rodrigo (386 intervenciones) el 15/08/2020 02:56:11
Los enteros tienen clausura. Si divides 2 enteros, te va a dar entero. SIempre. Independiente de a que OTRA variable la asignes.

Tu promedio lo calculas asi:

1
promedio=(a+b+c+d+e)/4;

Matematicamente esta incorrecto, deberias dividir por 5 porque estas sumando 5 numeros, pero dejando de lado esto, estas dividiendo la suma de enteros por el entero 4, asi que te va a dar un numero entero de vuelta.

Cambia el 4 por 4.0 o si te he convencido del error matematico, cambialo por 5.0 y disfruta de los resultados
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