zoukankan      html  css  js  c++  java
  • Java实现 蓝桥杯 算法提高 三角形

    算法提高 12-1三角形
    时间限制:1.0s 内存限制:256.0MB
    提交此题
    问题描述
      为二维空间中的点设计一个结构体,在此基础上为三角形设计一个结构体。分别设计独立的函数计算三角形的周长、面积、中心和重心。输入三个点,输出这三个点构成的三角形的周长、面积、外心和重心。结果保留小数点后2位数字。
    样例输出
    与上面的样例输入对应的输出。
    例:
    在这里插入图片描述
    数据规模和约定
      输入数据中每一个数的范围。
      例:doule型表示数据。

    import java.util.Scanner;
    
    
    public class 三角形 {
    	public static void main(String[] args) {
    		Scanner s = new Scanner(System.in);
    		double x1 = s.nextDouble();
    		double y1 = s.nextDouble();
    		double x2 = s.nextDouble();
    		double y2 = s.nextDouble();
    		double x3 = s.nextDouble();
    		double y3 = s.nextDouble();
    		double a, b, c;
    		a = Math.sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
    		b = Math.sqrt((x1 - x3) * (x1 - x3) + (y1 - y3) * (y1 - y3));
    		c = Math.sqrt((x3 - x2) * (x3 - x2) + (y3 - y2) * (y3 - y2));
    		double zhou = a + b + c;
    		double p = 0.5 * (a + b + c);
    		double area = Math.sqrt(p * (p - a) * (p - b) * (p - c));
    		System.out.printf("%.2f
    ", zhou);
    		System.out.printf("%.2f
    ", area);
    		double wai1, wai2, k;
    		k = 2 * (x1 - x2) * (y3 - y2) - 2 * (y1 - y2) * (x3 - x2);
    		wai1 = (y3 - y2) * (x1 * x1 + y1 * y1 - x2 * x2 - y2 * y2) - (y1 - y2)
    				* (x3 * x3 + y3 * y3 - x2 * x2 - y2 * y2);
    		wai2 = (x1 - x2) * (x3 * x3 + y3 * y3 - x2 * x2 - y2 * y2) - (x3 - x2)
    				* (x1 * x1 + y1 * y1 - x2 * x2 - y2 * y2);
    		System.out.printf("%.2f %.2f
    ", wai1 / k, wai2 / k);
    		double zhong1, zhong2;
    		zhong1 = (x1 + x2 + x3) / 3;
    		zhong2 = (y1 + y2 + y3) / 3;
    		System.out.printf("%.2f %.2f
    ", zhong1, zhong2);
    	}
    
    
    }
    
    
  • 相关阅读:
    VSCode配置Python开发环境
    图像特征——边缘
    关于相机内参中的焦距fx和fy
    摄影变换和仿射变换
    为什么要引入齐次坐标
    链表一
    从小问题看懂链表
    类与对象
    排序一
    数组
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13079351.html
Copyright © 2011-2022 走看看