判断平面内一点和三角形位置关系的算法和python语言的程序实现

(2017/2/21:坚持学python,坚持写博客,这是第三篇;万事开头难,坚持会更难,希望我能坚持住!)昨天薛老师留的作业题目是:“输入x1,y1;x2,y2;x3,y3 三个坐标构成一个三角形,随机输入一个坐标判断是否再三角形范围内。”拿到这个题目,        首先想到的要如何从键盘输入三个参数,目前为止我对pyton键盘输入函数的了解仅限于raw_input() 函数,但是
摘要由CSDN通过智能技术生成

(2017/2/21:坚持学python,坚持写博客,这是第三篇;万事开头难,坚持会更难,希望我能坚持住!)

昨天薛老师留的作业题目是:“输入x1,y1;x2,y2;x3,y3 三个坐标构成一个三角形,随机输入一个坐标判断是否再三角形范围内。”

拿到这个题目,

        首先想到的要如何从键盘输入三个参数,目前为止我对pyton键盘输入函数的了解仅限于raw_input() 函数,但是这个函数貌似一次交互只能读入一个参数;能否一次交互实现多个参数的输入呢?百度一下后发现raw_input()函数为python2中所有,input()函数未python3所有,而raw_input()函数还有一个split()方法,可以用诸如逗号、空格符之类的字符对对多个参数进行分隔。于是这个问题解决。

       然后就是要对输入的三个参数进行判断,看看是否满足构成三角形的条件(任意两边之和大于第三边,任意两边之差小于第三边)

       最后,当三个坐标参数满足三角形构成条件的时候,要交互式提示用户输入第四个点坐标,并判定第四个点是否在三角形内。这是个数学问题,但是当时并未上网查询此问题的算法,因为自己有个思路,就是第四个点的横坐标不能比三个顶点的横坐标最大值还大,也不能比三个顶点横坐标最小值还小;同样,第四个点的纵坐标也不能大于三个顶点纵坐标的最大值,并且不能小于三个顶点纵坐标的最小值。这两个坐标一旦有一个超出范围,必在三角形之外,所以想当然地以为,其补集的点就一定在三角形之内。于是按照思路写出了下面的代码,并用点(0,0),ÿ

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值