Rodrigo Gaiotto Postado Novembro 22, 2016 Denunciar Share Postado Novembro 22, 2016 (editado) Boa noite pessoal, Não consegui identificar tópico parecido aqui no forum, então resolvi postar. Preciso passar algumas variaveis para uma função EXCETO as com valor 111 ou 222 (dei esses valores para criar uma referencia). Primeiramente, não consegui compilar o codigo passando variaveis por vetor diretamente para a função, então estou convertendo para float apenas. //Convertendo vetor float para float float a,b,c,d,e,z; a=222; b=222; c=222; d=222; z=222; if (nota[1] == 111) {z=nota[1];} else { a=nota[1];} if (nota[2] == 111) {z=nota[2];} else { b=nota[2];} if (nota[3] == 111) {z=nota[3];} else { c=nota[3];} if (nota[4] == 111) {z=nota[4];} else { d=nota[4];}printf ("\n%.2f %.2f %.2f %.2f %.2f %.2f\n", a,b,c,d,e,z);variaveis com valor 111 ou 222 não podem entrar na função caso contrario o calculo que ela executa vai pro espaço...Alguma idéia de como fazer isso galera?Obrigado.Gaiotto Editado Novembro 22, 2016 por Rodrigo Gaiotto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rodrigo Gaiotto Postado Novembro 22, 2016 Autor Denunciar Share Postado Novembro 22, 2016 (editado) Galera, corrigi o problema de maneira muito simples, substituindo o valor da variavel pelo valor adequado. Agora o problema é outro, mas parece mais simples pois não involve logica. DECLARAÇÃO DA FUNÇÃO:void func(float p1,float p2,float p3,float p4,float final) { final=(p1*1)+(p2*2)+(p3*3)+(p4*4)/10; } CHAMADA DA FUNÇÃO NA MAIN: //Convertendo vetor float para float float a,b,c,d,result; a=0; b=0; c=0; d=0; result=0; a=nota[1]; b=nota[2]; c=nota[3]; d=nota[4]; func(&a,&b,&c,&d,&result);Mesmo removendo do vetor para as variaveis float, recebo o seguinte erro ao compilar:In function 'main':[Error]incompatible type for argument 1 of 'func'[Note] expected 'float' but argument is of type 'float *' Editado Novembro 22, 2016 por Rodrigo Gaiotto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rodrigo Gaiotto Postado Novembro 22, 2016 Autor Denunciar Share Postado Novembro 22, 2016 DECLARAÇÃO float func(float p1,float p2,float p3,float p4) { float result; result=(p1*1)+(p2*2)+(p3*3)+(p4*4)/10; return result; } CHAMADA (bastou deixar de apontar para o endereço (&) e apontar diretamente para a variavel. //Convertendo vetor float para float float a,b,c,d,resultado; a=0; b=0; c=0; d=0; a=nota1; b=nota2; c=nota3; d=nota4; printf ("\%f %f %f %f \n", a,b,c,d); resultado=func(a,b,c,d); printf ("\nMEDIANA = %f \n", resultado); printf("\nDeseja incluir outro Aluno? s/n \n\n"); resp = getch(); Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Rodrigo Gaiotto
Boa noite pessoal,
Não consegui identificar tópico parecido aqui no forum, então resolvi postar.
Preciso passar algumas variaveis para uma função EXCETO as com valor 111 ou 222 (dei esses valores para criar uma referencia).
Editado por Rodrigo GaiottoPrimeiramente, não consegui compilar o codigo passando variaveis por vetor diretamente para a função, então estou convertendo para float apenas.
//Convertendo vetor float para float
float a,b,c,d,e,z;
a=222;
b=222;
c=222;
d=222;
z=222;
if (nota[1] == 111) {z=nota[1];} else { a=nota[1];}
if (nota[2] == 111) {z=nota[2];} else { b=nota[2];}
if (nota[3] == 111) {z=nota[3];} else { c=nota[3];}
if (nota[4] == 111) {z=nota[4];} else { d=nota[4];}
printf ("\n%.2f %.2f %.2f %.2f %.2f %.2f\n", a,b,c,d,e,z);
variaveis com valor 111 ou 222 não podem entrar na função caso contrario o calculo que ela executa vai pro espaço...
Alguma idéia de como fazer isso galera?
Obrigado.
Gaiotto
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.