qq_48586315 2020-06-25 14:28 采纳率: 100%
浏览 82
已采纳

本人初学java,哪位大佬能帮忙看看这个计算三角形面积的程序哪里错了吗?

海伦公式求三角形面积:

public class Arith {
    public void  arith(double a, double b,double c) {

        if((a + b > c)&&(a + c > b)&&(b + c > a)&&(a - b < c)&&(
                a - c < b)&&(b - c < a)) {
            double z;
              double p =(a + b + c);
             z = Math.sqrt(p * (p - a) * (p - b) * (p - c));
             System.out.print(z);
        } 
    }
}


主程序:

import java.util.*;
public class Main {
    static double a;
    static double b;
    static double c;

    public static void main(String[] args) {
        Arith brith = new Arith();
        NewScanner newscanner =new NewScanner();
        Scanner scan = new Scanner(System.in);
        System.out.println("输入三角形三边");
        if(scan.hasNextDouble()) {
        a = scan.nextDouble();
        }

        System.out.println("第二条边");
        if(scan.hasNextDouble()) {
        b = scan.nextDouble();
        }

        System.out.println("第三条边");
        if(scan.hasNextDouble()) {
        a = scan.nextDouble();
        }

        brith.arith(a, b, c);
        // TODO Auto-generated method stub

    }

}

  • 写回答

1条回答 默认 最新

  • Json-Huang 2020-06-25 16:03
    关注

    main方法中c变量没有看到有赋值,

            System.out.println("第三条边");
            if(scan.hasNextDouble()) {
            a = scan.nextDouble();
            }
                    这里a = scan.nextDouble();应该改成c = scan.nextDouble();吧
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题