Red de conocimiento informático - Conocimiento del nombre de dominio - ¡Urgente! Pregunta de C ++: ingrese los puntos finales de dos líneas rectas desde la pantalla para determinar si se cruzan. Si se cruzan, se proporciona el punto de intersección. Imprima los resultados en la pantalla.

¡Urgente! Pregunta de C ++: ingrese los puntos finales de dos líneas rectas desde la pantalla para determinar si se cruzan. Si se cruzan, se proporciona el punto de intersección. Imprima los resultados en la pantalla.

Todos están incompletos e ignoran la situación de la pendiente infinita

1L es tan poderoso que realmente me avergüenzo de mí mismo

La descripción de LZ en sí es incorrecta: directa line Si no hay puntos finales, lo manejaré como dos puntos en la línea recta

#include

usando namespace std; Obtener la intersección de la línea recta del plano

doble x0 = 3,y0=0,x1 = 3,y1=3, x2 = 3, y2 = 0, x3 = 0, y3 = 3,

x,y; //Registra el punto de intersección

bool Inter(){

bool lim1 = false,lim2 = false //Si el eje X es vertical o not

double k1,b1, k2,b2;//Pendiente e intercepción del eje Y

//Marca de caso especial

if(x1 != x0 ) k1 = (y1-y0)/(x1-x0 ),b1 = y0 - k1*x0;

else lim1 = verdadero

if(x3 != x2) k2; = (y3-y2)/(x3-x2), b2 = y2 - k2*x2;

else lim2 = true

if(!lim1 && !lim2){/ /No perpendicular al eje X

if(k1 == k2)return false

x = (b2-b1)/(k1-k2);

y = k1 * x + b1;

return true;

}else if(lim1 && lim2){//2 líneas rectas, todas verticales en el eje X

devuelve falso

}si(lim1 &&!lim2){

x = b2

y = k2 * x + b2; ;

devuelve verdadero;

}si no(!lim1 &&lim2){

x =

y = k1 * x; + b1;

devuelve verdadero

}

devuelve falso

}

int principal(); {

if(Inter()) cout<< "Se cruza con:"<

else cout<<"Paralelo; "<

devuelve 0;

si no cout<

}