preciso fazer um codigo em C que tem uma variavel estruturada com 3 membros (xi,yi) que são pontos. outra variavel estruturada tem 3 membros que são distancias escrever uma funcao e os struct para calcular as distancias entre os pontos. Fiz o codigo abaixo mas ta dando erro, to combilando com o code blocks e fazendo o main para testar:
#include <stdio.h> #include <math.h>
struct ponto{ int x1,y1; int x2,y2; int x3,y3; }; typedef struct ponto pontos;
struct distancia{ int dist1; int dist2; int dist3; }; typedef struct distancia dist;
dist calc_dist (pontos *p1, pontos *p2, pontos *p3){ float dist1=0, dist2=0, dist3=0; dist1 = (sqrt(pow(*p1->x1 - *p2->x2,2)) + (pow(*p1->y1 - *p2->y2,2))); //distancia p1 a p2 dist2 = (sqrt(pow(*p2->x2 - *p3->x3,2)) + (pow(*p2->y2 - *p3->y3,2))); //distancia p2 a p3 dist3 = (sqrt(pow(*p1->x1 - *p3->x3,2)) + (pow(*p1->y1 - *p3->y3,2))); //distancia p1 a p3 printf("\nDistancia do p1 ao p2: %f",dist1); printf("\nDistancia do p2 ao p3: %f",dist2); printf("\nDistancia do p1 ao p3: %f",dist3); }
main (){ pontos p1,p2,p3; dist dist1,dist2,dist3; printf("\nDigite valor para o p1 (x1,y1):\n"); scanf("%d %d", %x1,&y1); printf("\nDigite valor para o p2 (x2,y2):\n"); scanf("%d %d", %x2,&y2); printf("\nDigite valor para o p3 (x3,y3):\n"); scanf("%d %d", %x3,&y3); printf("\nP1:(%d,%d) , P2:(%d,%d) , P3:(%d,%d)\n", x1,y1,x2,y2,x3,y3); }
Pergunta
luizasilval
preciso fazer um codigo em C que tem uma variavel estruturada com 3 membros (xi,yi) que são pontos. outra variavel estruturada tem 3 membros que são distancias
escrever uma funcao e os struct para calcular as distancias entre os pontos. Fiz o codigo abaixo mas ta dando erro, to combilando com o code blocks e fazendo o main para testar:
#include <stdio.h>
#include <math.h>
struct ponto{
int x1,y1;
int x2,y2;
int x3,y3;
};
typedef struct ponto pontos;
struct distancia{
int dist1;
int dist2;
int dist3;
};
typedef struct distancia dist;
dist calc_dist (pontos *p1, pontos *p2, pontos *p3){
float dist1=0, dist2=0, dist3=0;
dist1 = (sqrt(pow(*p1->x1 - *p2->x2,2)) + (pow(*p1->y1 - *p2->y2,2))); //distancia p1 a p2
dist2 = (sqrt(pow(*p2->x2 - *p3->x3,2)) + (pow(*p2->y2 - *p3->y3,2))); //distancia p2 a p3
dist3 = (sqrt(pow(*p1->x1 - *p3->x3,2)) + (pow(*p1->y1 - *p3->y3,2))); //distancia p1 a p3
printf("\nDistancia do p1 ao p2: %f",dist1);
printf("\nDistancia do p2 ao p3: %f",dist2);
printf("\nDistancia do p1 ao p3: %f",dist3);
}
main (){
pontos p1,p2,p3;
dist dist1,dist2,dist3;
printf("\nDigite valor para o p1 (x1,y1):\n");
scanf("%d %d", %x1,&y1);
printf("\nDigite valor para o p2 (x2,y2):\n");
scanf("%d %d", %x2,&y2);
printf("\nDigite valor para o p3 (x3,y3):\n");
scanf("%d %d", %x3,&y3);
printf("\nP1:(%d,%d) , P2:(%d,%d) , P3:(%d,%d)\n", x1,y1,x2,y2,x3,y3);
}
Link para o comentário
Compartilhar em outros sites
1 resposta 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.