Está dando problema quando coloco isso no code blocks, alguem sabe o erro? o problema é com o valor "o" e não sai a média final correta.
quero calcular a média final dando 3 valores e escolher qual média final
Linguagem usada C:
float main()
{
float n1,n2,n3,o,m;
printf ("Nota 1= "); scanf ("%f", &n1);
printf ("Nota 2= "); scanf ("%f", &n2);
printf ("Nota 3= "); scanf ("%f", &n3);
printf("Escreva '1' para média aritmética, '2' para ponderada ou '3' para harmonica:"); scanf("%f", &o);
if (o=1)
{ m = (n1+n2+n3)/3;}
if (o=2)
{ m = ((n1*3)+(n2*3)+(n3*4))/10;}
if (o=3)
{ m = 3/((1/n1)+(1/n2)+(1/n3));}
printf("Média final=",m);
return 0;
}
Soluções para a tarefa
Vou grifar onde tem erro:
float main()
{
float n1,n2,n3,o,m;
printf ("Nota 1= "); scanf ("%f", &n1);
printf ("Nota 2= "); scanf ("%f", &n2);
printf ("Nota 3= "); scanf ("%f", &n3);
printf("Escreva '1' para média aritmética, '2' para ponderada ou '3' para harmonica:"); scanf("%f", &o);
if (o==1)
{ m = (n1+n2+n3)/3;}
if (o==2)
{ m = ((n1*3)+(n2*3)+(n3*4))/10;}
if (o==3)
{ m = 3/((1/n1)+(1/n2)+(1/n3));}
printf("Média final= %f",m);
return 0;
}
________________________________________________
Os erros eram q em o=1 vc está atribuindo o valor 1 para 'o', quando coloca == , vc pergunta se é igual aquele valor, no seu caso era isso q vc queria.
o erro do printf("Média final= ",m); era q se vc está trabalhando com uma variavel float vc deve colocála no print para que seja mostrada, ou seja %f.
testei aqui no meu e foi.