¿Pueden ayudarme a hacer un cálculo simple del informe?

1er puntaje x 20%

2da puntuación x 40%

3er puntaje x 40%

Muestra:

Entrada:

65 56 100

Salida:

75,00

Mi código :

#include <stdio.h>
#include <math.h>

int main() {

int score1, score2, score3;
float amount;
float n;

float percent1 = 0.2;
float percent2 = 0.4;
float percent3 = 0.4;
scanf("%f %f %f",&n, &n, &n);

score1 = (float)n*percent1;
score2 = (float)n*percent2;
score3 = (float)n*percent3;

amount = score1+score2+score3;
printf("%.2f\n", amount);

  getchar();
  return 0;
}

Mi entrada:

65 56 100

Mi salida:

100.00

Puedes verlo allí, la salida debe ser 92,00

¿hay algún error?

Ayúdame por favor, ty

c
-2
Joni Wick 7 oct. 2019 a las 03:21

1 respuesta

La mejor respuesta

Está utilizando la misma variable (n) para los tres valores de entrada. Necesita una variable separada para cada valor de entrada. Utilice las variables score para almacenar los valores y luego utilícelos en un solo cálculo.

#include <stdio.h>
#include <math.h>

int main()
{
  int score1, score2, score3;
  float amount;
/* Variable 'n' not required, since not used. */
  float n;

  float percent1 = 0.2;
  float percent2 = 0.4;
  float percent3 = 0.4;

  scanf("%f %f %f",&score1, &score2, &score3);

  amount = (score1 * percent1) + (score2 * percent2) + (score3 * percent3);
  printf("%.2f\n", amount);

  getchar();
  return 0;
}
0
Abra 7 oct. 2019 a las 01:20