import java.util.Scanner;
public class Exercise9_12 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
lineSegment l1 = new lineSegment();
lineSegment l2 = new lineSegment();//建立两条线段
System.out.println(“请输入第一条线段的一个端点的值,x和y之间用空格分开:”);
l1.x1 = input.nextInt();
l1.y1 = input.nextInt();
System.out.println(“请输入第一条线段的另一个端点的值,x和y之间用空格分开:”);
l1.x2 = input.nextInt();
l1.y2 = input.nextInt();
System.out.println(“请输入第二条线段的一个端点的值,x和y之间用空格分开:”);
l2.x1 = input.nextInt();
l2.y1 = input.nextInt();
System.out.println(“请输入第二条线段的另一个端点的值,x和y之间用空格分开:”);
l2.x2 = input.nextInt();
l2.y2 = input.nextInt();//输入两条线段的四个端点
double k1 = l1.getK();
double b1 = l1.getB();//求第一条线段的直线方程
double k2 = l2.getK();
double b2 = l2.getB();//求第二条线段的直线方程
double x0 = (b2 - b1)/(k1 - k2);
double y0 = k1 * x0 + b1;//求两条线段的交点
System.out.print("它们的交点为 ( "+x0+","+y0+" )");
}
}
class lineSegment{
double x1;
double y1;
double x2;
double y2;
public double getK(){
return (y1 -y2)/(x1 - x2);
}//求斜率
public double getB(){
return y1 - getK()*x1;
}//求截距
}