9.7数学与概率(一)——给定直角坐标上的两条线,确定这两条线会不会相交
2015-08-07 15:59
501 查看
[align=left]/**[/align]
[align=left] * 功能:给定直角坐标上的两条线,确定这两条线会不会相交。[/align]
[align=left] */[/align]
[align=left] * 功能:给定直角坐标上的两条线,确定这两条线会不会相交。[/align]
[align=left] */[/align]
public class Line { static double epsilon=0.000001; public double slope;//斜率 public double yintercept;//与y轴的截距 public static void main(String[] args) { // TODO Auto-generated method stub } /** * 假设: * 1)若两条线是相同的(斜率和y轴截距相等),则认为这两条线相交; * 2)设计线的数据结构。 * 思路: * 两条线不平行必相交,因此只需检查两者的斜率是否相同,或者是否为同一条。 * * 此类问题的注意事项: * 1)多提问,确定假设条件或前提条件。 * 2)尽量设计并使用数据结构,注重面向对象设计。 * 3)仔细考虑线的数据结构的设计。 * 4)不要假设斜率和y轴截距为整数。 * 5)了解浮点数表示法的限制。不要用“==”来检查浮点数是否相等,而应该检查两者差值是否小于某个极小值(如epsilon=0.000001)。 * * @param line2 * @return */ public boolean intersect(Line line2){ return Math.abs(this.slope-line2.slope)>epsilon||Math.abs(this.yintercept-line2.yintercept)<epsilon; } }
相关文章推荐
- Android布局之 android:gravity和android:layout_gravity区别与联系
- POJ-1979 Red and Black
- 富文本
- hash join
- 1686 Oulipo【kmp】
- ORA-12704: 字符集不匹配
- Win10激活失败出现错误代码0xC004C003原因:微软服务器不堪重负
- Linux - sed 工具
- 关于中国教育的反思
- 字符串数组
- hdu4513 吉哥系列故事——完美队形II
- Linux - sed 工具
- BFS
- HTML5绘制颜色渐变
- JSON字符串和表互相转换
- centos 配置本地yum源
- Team Queue(POJ 2259)
- 第18章 多线程----线程简介
- 【暑假】[实用数据结构]UVAlive 4329 Ping pong
- c++内存池