問題

請寫一程式可輸入一點到一直線之間的距離例如直線=3x+4y=5,點(1,2)之間的距離為1.2

 

package ch4;
import java.io.*;
public class ch4_11_4 
{
    public static void main(String args[]) throws IOException
    {
        InputStreamReader in=new InputStreamReader(System.in);
        BufferedReader buf=new BufferedReader(in);
        int liA,liB,liC,poX,poY;
        double dis;
        String strliA,strliB,strliC,strpoX,strpoY;
        System.out.println("請依次輸入此直線方程式Ax+By+C=0中的ABC");
        strliA=buf.readLine();
        liA=Integer.parseInt(strliA);
        strliB=buf.readLine();
        liB=Integer.parseInt(strliB);
        strliC=buf.readLine();
        liC=Integer.parseInt(strliC);
        System.out.println("輸入值如下");
        System.out.println("A="+liA+",B="+liB+",C="+liC);
        System.out.println("請一次輸入座標的X與Y");
        strpoX=buf.readLine();
        poX=Integer.parseInt(strpoX);
        strpoY=buf.readLine();
        poY=Integer.parseInt(strpoY);
        System.out.println("你輸入的座標是("+poX+","+poY+")");
        dis=(Math.abs(
                (liA*poX)+(liB*poY)+liC)
            /(Math.sqrt(
                    Math.pow(liA,2)+Math.pow(liB,2))));
        System.out.println("點與直線的距離等於"+dis);
    }

}
輸出結果

請依次輸入此直線方程式Ax+By+C=0中的ABC
3
4
-5
輸入值如下
A=3,B=4,C=-5
請一次輸入座標的X與Y
1
2
你輸入的座標是(1,2)
點與直線的距離等於1.2

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 驢子 的頭像
    驢子

    驢子的生活日記

    驢子 發表在 痞客邦 留言(0) 人氣()