Título:
Los dos puntos sobre la primera línea recta son (x1, y1) y (x2, y2), los dos puntos sobre la segunda línea recta son (x3, y3) y (x4, y4), las
dos líneas rectas La intersección se puede resolver mediante el siguiente sistema de ecuaciones lineales:
(y1-y2) x- (x1-x2) y = (y1-y2) x1- (x1-x2) y1
(y3-y4) x- (x3-x4) y = (Y3-y4) x3- (x3-x4) y3
Si la ecuación no tiene solución, las dos líneas rectas son paralelas.
Escriba un programa que solicite al usuario que ingrese estos cuatro puntos y luego muestre su intersección.
代码 如下 :
paquete com;
import java.util.Scanner;
ecuación de clase {
private int x1;
int privado y1;
int privado x2;
int privado y2;
int privado x3;
int privado y3;
int privado x4;
int privado y4;
Ecuación pública (int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4) {
this.x1 = x1;
this.y1 = y1;
this.x2 = x2;
this.y2 = y2;
this.x3 = x3;
this.y3 = y3;
this.x4 = x4;
this.y4 = y4;
}
public int getX1() {
return x1;
}
public int getY1() {
return y1;
}
public int getX2() {
return x2;
}
public int getY2() {
return y2;
}
public int getX3() {
return x3;
}
public int getY3() {
return y3;
}
public int getX4() {
return x4;
}
public int getY4() {
return y4;
}
public boolean isSolvab1e() {
int i,j,k,l,m,n,o;
i=y1-y2;j=x1-x3;
k=y3-y4;l=x3-x4;
m=(y1-y2)*x1-(x1-x2)*y1;
n=(y3-y4)*x3-(x3-x4)*y3;
o=i*l-j*k;
if(o!=0){
return true;
}
else{return false;}
}
public int getX(){
int i,j,k,l,m,n,o;
i=y1-y2;j=x1-x3;
k=y3-y4;l=x3-x4;
m=(y1-y2)*x1-(x1-x2)*y1;
n=(y3-y4)*x3-(x3-x4)*y3;
return (m*l-j*n)/(i*l-j*k);
}
public int getY(){
int i,j,k,l,m,n,o;
i=y1-y2;j=x1-x3;
k=y3-y4;l=x3-x4;
m=(y1-y2)*x1-(x1-x2)*y1;
n=(y3-y4)*x3-(x3-x4)*y3;
return (i*n-m*k)/(i*l-j*k);
}
}
prueba de clase pública {
public static void main (String [] args) {
System.out.println ("Ingrese el valor de cuatro puntos:");
Scanner sc = new Scanner (System.in);
int x1 = sc. nextInt ();
int y1 = sc.nextInt ();
int x2 = sc.nextInt ();
int y2 = sc.nextInt ();
int x3 = sc.nextInt ();
int y3 = sc.nextInt ();
int x4 = sc.nextInt ();
int y4 = sc.nextInt ();
Ecuación x = ecuación nueva (x1, y1, x2, y2, x3, y3, x4, y4);
if (x.isSolvab1e () == verdadero ) {
System.out.println ("La intersección de dos líneas rectas es");
System.out.println ("x es" + x.getX ());
System.out.println ("y es" + x.getY ());
} else {
System.out.println ("Línea paralela");
}
}
}
Resultado de la operación:
Este artículo es original, indique la fuente.
Si te ayuda, ¡por favor dame un visto bueno!