題目

輸入兩點可得直線方程式,請寫一程式可以輸入兩個點並得到直線方程式

package ch4;
import java.io.*;
public class ch4_11_5 
{
    public static void main(String args[])throws IOException
    {
        InputStreamReader in=new InputStreamReader(System.in);
        BufferedReader buf=new BufferedReader(in);
        int X1,X2,Y1,Y2,X,Y,C,M;
        String strX1,strX2,strY1,strY2;
        System.out.println("請輸入A點的X跟Y");
        strX1=buf.readLine();
        X1=Integer.parseInt(strX1);
        strY1=buf.readLine();
        Y1=Integer.parseInt(strY1);
        System.out.println("請輸入B點的X跟Y");
        strX2=buf.readLine();
        X2=Integer.parseInt(strX2);
        strY2=buf.readLine();
        Y2=Integer.parseInt(strY2);
        System.out.println("A點("+X1+","+Y1+")B點("+X2+","+Y2+")");
        M=(Y2-Y1)/(X2-X1);
        System.out.println("此兩點斜率為"+M);
        X=Y2-Y1;
        Y=-(X2-X1);
        C=(-(X2-X1)*-Y1)+((Y2-Y1)*-X1);
        if(Y>=0)//判斷輸出算式
        {
            if(C>=0)
            {
                System.out.println(X+"x+"+Y+"y+"+C+"=0");
            }
            else
            {
                System.out.println(X+"x+"+Y+"y"+C+"=0");
            }
        }
        else
        {
            if(C>=0)
            {
                System.out.println(X+"x"+Y+"y+"+C+"=0");
            }
            else
            {
                System.out.println(X+"x"+Y+"y"+C+"=0");
            }
        }
    }
}

結果

請輸入A點的X跟Y
-2
14
請輸入B點的X跟Y
4
-4
A點(-2,14)B點(4,-4)
此兩點斜率為-3
-18x-6y+48=0

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

    驢子的生活日記

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