You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java如何将三角形坐标变量x1/y1等改为数组存储实现面积计算

Java代码数组改写实现思路

你可以通过声明两个长度为3的double类型数组分别存储x、y坐标完成改造,具体修改步骤如下:

  • 第一步:替换原有的6个独立坐标变量声明,改为数组定义:
    double[] x = new double[3];
    double[] y = new double[3];
    
  • 第二步:修改输入逻辑,可直接按下标赋值,也可通过循环简化输入代码:
    // 循环读取3组坐标,每组依次为x、y值
    for (int i = 0; i < 3; i++) {
        x[i] = input.nextDouble();
        y[i] = input.nextDouble();
    }
    
  • 第三步:调整面积计算逻辑,把原来的x1、y1等变量替换为对应数组下标取值即可,同时可以改用Math.sqrt方法替代Math.pow(xx,0.5)求平方根,代码可读性更高:
    double side1 = Math.sqrt(Math.pow(x[1] - x[0], 2) + Math.pow(y[1] - y[0], 2));
    double side2 = Math.sqrt(Math.pow(x[2] - x[1], 2) + Math.pow(y[2] - y[1], 2));
    double side3 = Math.sqrt(Math.pow(x[0] - x[2], 2) + Math.pow(y[0] - y[2], 2));
    double s = (side1 + side2 + side3) / 2;
    double area = Math.sqrt(s * (s - side1) * (s - side2) * (s - side3));
    
修改后完整可运行代码
/*
(几何:三角形面积) 编写程序提示用户输入三角形的三个点 (x1, y1), (x2, y2), (x3, y3) 并输出面积
*/
import java.util.Scanner;

public class Exercise_02_19 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        // 提示用户输入三角形三个点
        System.out.print("请输入三角形的三个点坐标:");
        // 用两个数组分别存储x、y坐标
        double[] x = new double[3];
        double[] y = new double[3];
        for (int i = 0; i < 3; i++) {
            x[i] = input.nextDouble();
            y[i] = input.nextDouble();
        }

        // 计算三角形面积
        double side1 = Math.sqrt(Math.pow(x[1] - x[0], 2) + Math.pow(y[1] - y[0], 2));
        double side2 = Math.sqrt(Math.pow(x[2] - x[1], 2) + Math.pow(y[2] - y[1], 2));
        double side3 = Math.sqrt(Math.pow(x[0] - x[2], 2) + Math.pow(y[0] - y[2], 2));
        double s = (side1 + side2 + side3) / 2;
        double area = Math.sqrt(s * (s - side1) * (s - side2) * (s - side3));

        // 输出结果
        System.out.println("三角形的面积为 " + area);
        input.close();
    }
}

内容的提问来源于stack exchange,提问作者zucc0nit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 13:36:04