Ir ao conteúdo
  • Cadastre-se

Priograma em C


gilberto48

Posts recomendados

Olá pessoal, não estou dando conta de fazer a parte de achar o ponto. Alguém pode me ajudar?
 
Dados duas retas em um plano X, Y. Fazer um programa C para encontrar o ponto de
interseção Pi = (xi, yi) entre elas. Supor que as duas retas não são paralelas. Reta 1: definida
pelos pontos P1 =(x1, y1) e P2 = (x2, y2). Reta 2: definida pelos pontos P3 = (x3, y3) e P4 =
(x4, y4).
 
 

void main ()
{
float x1,x2,y1,y2,x4,x3,y3,y4;
float a1,a2, b1,b2;
float Y1, Y2, X1 , X2;
 
printf("Digite os dois ponto na forma (x,y) da reta 1:\n");
scanf("%f %f %f %f", &x1,&y1,&x2,&y2);
 
printf("Digite os dois ponto na forma (x,y) da reta 2:\n");
scanf("%f %f %f %f ", &x3,&y3,&x4,&y4);
 
a1 = (y2-y1)/(x2-x1);
a2 = (y3-y4)/(x3-x4);
 
Y1= y1;
X1 = x1*a1;
 
b1 = Y1 - X1;
 
Y2= y3;
X2 = x3*a2;
 
b2 = Y2 - X2;
  
 
system("pause");
}

Link para o comentário
Compartilhar em outros sites

Pega a inclinação das duas retas:

a1 = (y2-y1)/(x2-x1);

a2 = (y3-y4)/(x3-x4);

Se a inclinação das retas forem iguais, elas são paralelas. Caso contrário, calcula a formula da reta pras duas retas:

r1 = y1 - a1 * x1;

r2 = y3 - a2 * x3;

Depois pega o X e Y da intersecção:

X = (r2 - r1) / (a1 - a2);

Y = a1 * X + r1;

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...