URI1005
C 2020-06-22Média 1
O problema inicial solicita que o programa calcule a média ponderada de duas notas. Os dados de entrada são as duas notas do tipo dupla precisão.
Entrada de dados
Os dados de entrada do programa são duas notas A
e B
, declaradas como variáveis de dupla precisão, como indicado no próprio desafio, assim para a sua leitura é usado %lf
no formato da função scanf()
para cada variável.
double A, B;
scanf("%lf", &A );
scanf("%lf", &B );
Processamento
No cálculo da média ponderada, cada nota é multiplicada por um fator de ponderação, esses produtos são somados e o resultado dividido pela soma desses fatores.
double media;
media = (A*PESO_A + B*PESO_B)/(PESO_A + PESO_B);
Os fatores de ponderação PESO_A
e PESO_B
são declarados como define
ou definições.
As definições são substituídas durante o pré-processamento do código pelos valores declarados.
#define PESO_A 3.5
#define PESO_B 7.5
Saída de dedos
A saída deve ser apresentada com cinco casas decimais utilizando %.5f
.
printf("MEDIA = %.5f\n", media );
Resolução
Juntando as partes na resolução do desafio temos:
#include <stdio.h>
#define PESO_A 3.5
#define PESO_B 7.5
int main( void )
{
double A, B;
double media;
scanf("%lf", &A );
scanf("%lf", &B );
media = (A*PESO_A + B*PESO_B)/(PESO_A + PESO_B);
printf("MEDIA = %.5f\n", media );
return( 0 );
}