0
点赞
收藏
分享

微信扫一扫

New Online Judge 1012

古月无语 2022-02-28 阅读 70
java

题目描述

平面上有三个点A、B、C,求∠ABC的大小

输入格式

输入有若干行,每行有6个实数x1,y1,x2,y2,x3,y3。
表示平面上的三个点A(x1,y1),B(x2,y2),C(x3,y3)。

输出格式

输出∠ABC的大小,单位为度(0~180),结果保留两位小数。

输入样例

3 0 0 0 0 1
-5 0 0 0 1 1

输出样例

90.00
135.00
import java.util.*;
public class Main
{
    public static void main(String[] args)
    {
        double PI = Math.PI;
        Scanner in = new Scanner(System.in);
        while(in.hasNextDouble())
        {
            double x1=in.nextDouble();
            double y1=in.nextDouble();
            double x2=in.nextDouble();
            double y2=in.nextDouble();
            double x3=in.nextDouble();
            double y3=in.nextDouble();
            double vector1x = x1-x2;
            double vector1y = y1-y2;
            double vector2x = x3-x2;
            double vector2y = y3-y2;
            double t = ((vector1x)*(vector2x) + (vector1y)*(vector2y))/
                       (Math.sqrt(Math.pow(vector1x, 2) + Math.pow(vector1y, 2))*
                               Math.sqrt(Math.pow(vector2x, 2) + Math.pow(vector2y, 2)));
            System.out.println(String.format("%.2f",Math.acos(t)*(180 / PI)));
        }
    }
}

余弦定理,算出一个数,最后再变成角度

 

举报

相关推荐

New Online Judge 1017

New Online Judge 1018

New Online Judge 1009

New Online Judge 1007

New Online Judge 1020

New Online Judge 1019

New Online Judge题解1006

0 条评论