首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >求解的C++替代算法

求解的C++替代算法
EN

Stack Overflow用户
提问于 2013-11-27 09:38:30
回答 2查看 201关注 0票数 1

我需要一些算法上的帮助,我有一个程序的问题。我需要做一个程序,用户输入坐标3点,系数为线性函数,通过这3点的三角形,我需要比较面积的形状,是什么使函数与那个三角形相交。

我会在这里粘贴代码,但是在我的母语中有一些东西,我只想知道这个解决方案的代码,因为只有在输入的点是精确的顺序而我无法处理的情况下,我的唤醒才会出现。

http://pastebin.com/vNzGuqX4

例如,我使用这个http://goo.gl/j18Ch0 --代码没有完成,我只是注意到,如果我按不同的顺序输入它,它就不会像输入点“1 1 2 5 4 4 0 5 1 5”那样工作,但是“4 4 1 1 2 5 0 5 1 5”就不起作用了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-27 09:52:55

线性必须至少与三角形的两条边交叉。所以你可以先找到这两个交叉点,这两个点和这三个顶点中的一个会形成一个小的三角形。用这个方程计算三角形S= sqrt(l *(L)*(L)*(L))的面积,其中l= (a+b+c)/2和a,b,c是边的长度。给定顶点的坐标,应该很容易得到边的长度。一个是小三角形的面积,另一个是大三角形减去小三角形的面积。

票数 1
EN

Stack Overflow用户

发布于 2013-11-27 13:25:05

如果你的三角形是ABC,那么下面是一个很好的方法:

  • 找出通过点A和B、B和C、C和A的直线。
  • 找出你的直线与这三条线的交点。
  • 检查在三角形边有两个交叉口。
  • 根据交点,计算新的小三角形的曲面。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20238707

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档