首页 > 编程语言 >编写一个程序,提示用户输入三个点 p0、p1 和 p2,显示 p2 是否在从 p0 到 p1 的线段左侧、右侧,或者在该直线上。

编写一个程序,提示用户输入三个点 p0、p1 和 p2,显示 p2 是否在从 p0 到 p1 的线段左侧、右侧,或者在该直线上。

时间:2024-06-07 23:33:17浏览次数:10  
标签:p2 p0 p1 线段 float System println input

(几何:点的位置)给定一个从点 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在线段右侧");
		}

		}
		
	}

 运行结果:

标签:p2,p0,p1,线段,float,System,println,input
From: https://blog.csdn.net/qq_72935053/article/details/139536844

相关文章

  • CSP历年复赛题-P3956 [NOIP2017 普及组] 棋盘
    原题链接:https://www.luogu.com.cn/problem/P3956题意解读:计算从(1,1)走到(m,m)的最小花费,有几个限定:同色格子可以走,花费为0;不同色格子可以走,花费为1;有色格子可以走到无色格子,花费为2,且用将无色格子临时染色;无色格子不能走到无色格子。解题思路:可以采用DFS来暴搜所有路径,需......
  • LED大屏调试 异形灯板P1.53_208x104-52s
    模组信息:P1.53_INC2065+INC2018_208x104-52s智能设置:一.112*52区域1.选定芯片-译码-分辨率-芯片数72.3.4.5.6.7.查看灯板--保存灯板二.96*52区域选定芯片-译码-分辨率-芯片数6重复以上步骤,保存灯板三.构造箱体......
  • CSP历年复赛题-P3955 [NOIP2017 普及组] 图书管理员
    原题链接:https://www.luogu.com.cn/problem/P3955题意解读:给出n个图书编号,q个需求码,找到后缀与需求码匹配的最小图书编号,没有输出-1。解题思路:先对图书编号排序,用枚举法遍历每一个图书编号,看后缀是否与需求码相同。100分代码:#include<bits/stdc++.h>usingnamespacestd;c......
  • 打卡信奥刷题(60)用Scratch图形化工具信奥P10424 [普及组] [蓝桥杯 2024 省 B] 好数,写
    [蓝桥杯2024省B]好数题目描述一个整数如果按从低位到高位的顺序,奇数位(个位、百位、万位……)上的数字是奇数,偶数位(十位、千位、十万位……)上的数字是偶数,我们就称之为“好数”。给定一个正整数N......
  • CSP历年复赛题-P2119 [NOIP2016 普及组] 魔法阵
    原题链接:https://www.luogu.com.cn/problem/P2119题意解读:在一组数里找出所有的Xa,Xb,Xc,Xd的组合,使得满足Xa<Xb<Xc<Xd,Xb-Xa=2(Xd-Xc),Xb-Xa<(Xc-Xb)/3,并统计出每个数作为A,B,C,D出现的次数。解题思路:1、枚举(O(n^4))首先想到的是通过4重循环枚举所有可能的Xa,Xb,Xc,Xd,然后判......
  • [DP] LCS例题 Luogu P1439 【模板】最长公共子序列 Luogu P4303 基因匹配
    LuoguP1439【模板】最长公共子序列【模板】最长公共子序列题目描述给出\(1,2,\ldots,n\)的两个排列\(P_1\)和\(P_2\),求它们的最长公共子序列。输入格式第一行是一个数\(n\)。接下来两行,每行为\(n\)个数,为自然数\(1,2,\ldots,n\)的一个排列。输出格式一个数,即......
  • P1182 数列分段 Section II
    数列分段SectionII题目描述对于给定的一个长度为$N$的正整数数列$A_{1\simN}$,现要将其分成$M$($M\leqN$)段,并要求每段连续,且每段和的最大值最小。关于最大值最小:例如一数列$4\2\4\5\1$要分成$3$段。将其如下分段:$$[4\2][4\5][1]$$第一段和为$6$,第$2$段......
  • P163 银行贷款
    题目银行贷款题目描述当一个人从银行贷款后,在一段时间内他(她)将不得不每月偿还固定的分期付款。这个问题要求计算出贷款者向银行支付的利率。假设利率按月累计。输入格式三个用空格隔开的正整数。第一个整数表示贷款的原值$w_0$,第二个整数表示每月支付的分期付款金额$w$,第......
  • CSP历年复赛题-P2058 [NOIP2016 普及组] 海港
    原题链接:https://www.luogu.com.cn/problem/P2058题意解读:计算24小时时间窗口内不同国家的数量,是队列的典型应用。解题思路:本题需要用到两个关键的数据结构:队列、数组队列用来保存24小时内到达的船的时间,数组用来保存24小时内每个国家有多少人每到一只船,需要把时间放入队列,如......
  • CSP历年复赛题-P2010 [NOIP2016 普及组] 回文日期
    原题链接:https://www.luogu.com.cn/problem/P2010题意解读:计算两个日期之间有多少个日期是回文。解题思路:如果通过枚举两个日期之间的所有日期,然后判断回文,则会有几个问题:枚举数据规模在10^7级别,再加上对于日期加一天、判断回文等处理,有可能超时,而且对日期进行加一天、判断回......