我从未使用过Java,我的一位编程朋友给了我这个尝试并习惯了Java。
他给了我test.java文件以及一些用于创建行类的指针。但是,我仍然不知道如何编写斜率或y_int的代码。我假设对于vert我继续使用布尔和if / else语句,但我有点迷失。
这是Test.java:
public class Test {
public static void main(String [] args ) {
Line line[] = {new Line(5,4),
new Line(0,2),
new Line(5)};
int i = 1;
for(Line li : line){
System.out.println("The x-intercept of line "+i+" is "+
li.getX_int());
i++;
}
}
}
这是Line.java类:
public class Line {
public double slope;
public double y_int;
public double x_int;
public boolean vert;
public Line(double slope, double y_int){
this.slope = slope;
this.y_int = y_int;
vert = false;
}
public Line(double x_int) {
slope = Double.NaN;
y_int = Double.NaN;
vert = true;
this.x_int = x_int;
}
public double getSlope() {
return slope;
}
public double getY_int() {
return y_int;
}
public boolean isVert() {
return vert;
}
}
答案 0 :(得分:2)
考虑事物的根定义。
你的等式是:
y(x) = m*x + b
其中
m = slope
b = y-intercept
通过将y设置为零并求解x:
来计算x截距x-intercept = -b/m
这会让你失望m = 0
,因为你不能除以零。在那种情况下,是没有x-intercept。这是一条平行于x轴的线。
同样,对于平行于y轴的垂直线, 没有y轴截距。
你打算为这些极端情况设置拦截?