2017-09-18 4 views
-4

私は決してJavaを使用しませんでした。私のプログラミングの友人の一人がJavaに慣れさせようとこれを教えてくれました。Javaで斜面のX切片を見つけるにはどうすればいいですか?

彼は私に、ラインクラスを作るためのいくつかのポインタとともにtest.javaファイルを与えました。しかし、私はまだ勾配またはy_intのコードを書く方法を知らない。私はvertに対して、Booleanと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

ヒント:非縦線の場合、x_intercept =(0 - y_intercept)/ slope –

答えて

2

は、物事のルート定義を考えてみてください。

ラインのためのあなたの式は次のとおりです。

y(x) = m*x + b 

m = slope 
b = y-intercept 

あなたはゼロに等しいYを設定し、xについて解くことにより、x切片を計算します。

x-intercept = -b/m 

これにより、0で割ることができないので、m = 0のためにあなたを失効させます。その場合、 xインターセプトなしです。それはx軸に平行な線です。

同様に、は、であり、y軸に平行な垂直線に対するy切片はない。

極端なケースでインターセプトを設定する予定はありますか?

関連する問題