(几何:点的位置)给定一个从点 p0(x0,y0)到pl(xl,pl)的有向线段,可以使用下面的条件来确定点 p2(x2,y2)是在线段的左侧、右侧,或者在该直线上(见下图):
编写一个程序,提示用户输入三个点 p0、p1 和 p2,显示 p2 是否在从 p0 到 p1 的线段左
侧、右侧,或者在该直线上。下面是运行示例:
package myjava;
import java.math.*;
import java.util.Scanner;
public class cy {
public static void main(String[]args)
{
System.out.println("请输入x0,y0");
Scanner input = new Scanner(System.in);
float x0 = input.nextFloat();
float y0 = input.nextFloat();
System.out.println("请输入x1,y1");
float x1 = input.nextFloat();
float y1 = input.nextFloat();
System.out.println("请输入x2,y2");
float x2 = input.nextFloat();
float y2 = input.nextFloat();
float a;
a = (x1 - x0) * (y2 - y0) - (x2 - x0) * (y1 - y0);
if (a > 0) {
System.out.println("p2在线段左侧");
}
if (a == 0) {
System.out.println("p2在线段上");
}
if (a < 0) {
System.out.println("p2在线段右侧");
}
}
}
运行结果: