escreva um algoritmo que calcule a média ponderada e imprima o segundo maior número

Esse algoritmo foi proposto pela Marlene.


Escreva um programa que lê 4 notas reais (do tipo double), calcule e imprime (com 2 casas
decimais) a média ponderada das notas. Os pesos são: 1 para a 1ª nota, 2 para 2ª, 3 para a 3ª e 4 para a 4ª. Imprima, também, a segunda a maior nota (com 2 casas decimais).
por exemplo: Notas: 10.0, 3.5, 6.8, 7.6

Em C:

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
30
31
32
33
34
#include <stdio.h>
 
int main(int argc, char **argv[]){
    int i;
	float notas[4], primeiraNota = 0.0, segundaNota = 0.0;
	printf("Digite a primeira nota: ");
	scanf("%f", &notas[0]);
	printf("Digite o segunda nota: ");
	scanf("%f", &notas[1]);
	printf("Digite a primeira nota: ");
	scanf("%f", &notas[2]);
	printf("Digite o segunda nota: ");
	scanf("%f", &notas[3]);
	printf("A media ponderada e: %.2f\n",((notas[0] + (notas[1]*2) + (notas[2]*3) + (notas[3]*4))/10));
 
    primeiraNota = notas[0];
    segundaNota = notas[0];
 
    for( i=0; i < 4 ; i++ )
    {
        if( notas[i] > primeiraNota )
        {
            segundaNota=primeiraNota;
            primeiraNota = notas[i];
        }
        else if( ( (notas[i]<primeiraNota) && (notas[i]>segundaNota) ) || (primeiraNota==segundaNota) )
        {
            segundaNota = notas[i];
        }
    }
	printf("A segunda maior nota e: %.2f\n",segundaNota);
 
	return 0;
}

assim que eu tiver um tempo, eu atualizo esse post e disponibilizo a solução em python.

abraço,
até…

Não existem posts relacionados.

Tags: , , ,

No comments yet.

Leave a Reply