有关三角形的java语言,应该怎么思考呢

采用控制台输入输出实现:输入三角形的三条边长度(整数),计算并输出该三角形的面积。

要可以不限次数的输入,直到输入0,则程序退出。
Java语言

public static void main(String[] args) {
        // TODO Auto-generated method stub
        boolean flag = true;
        Scanner sc = new Scanner(System.in);
        while (flag) {
            System.out.println("从键盘上输入3个整数并用空格隔开,单独输入0结束程序");

            String inputstr = sc.nextLine();
            String[] inputs = inputstr.split(" ");
            if(inputs.length != 3 && inputs.length != 1) {
                System.out.println("输入错误,请重新输入");
                continue;
            }
            int[] nums = new int[inputs.length];
            int sum = 0;
            for (int i = 0; i < inputs.length; i++) {
                nums[i] = Integer.parseInt(inputs[i]);
                sum+=nums[i];
            }
            if (inputs.length == 1 && nums[0] == 0) {
                flag = false;
                continue;
            }else if(inputs.length == 1 && nums[0]!= 0) {
                System.out.println("输入错误,请重新输入");
                continue;
            }else if(nums[0]+nums[1]<=nums[2]||nums[0]+nums[2]<=nums[1]||nums[1]+nums[2]<=nums[0]) { //两边之和必须大于第三边,否则三角形不存在
                System.out.println("三角形不存在,请重新输入");
                continue;
            }

            double p = sum / 2.0;
            double s = Math.sqrt(p * (p - nums[0]) * (p - nums[1]) * (p - nums[2]));
            System.out.println("三条边长分别为: " + nums[0] + "," + nums[1] + "," + nums[2]);
            System.out.printf("三角形面积约为: %.2f\n",s );
        }
        sc.close();

    }

用海伦公式,很简单的

计算三角形面积公式

img

img