MineralTea 2017-01-13 07:34 采纳率: 0%
浏览 2568
已采纳

自己编写了一个计算三角形面积的java程序,但因为是新手,所有还有些问题想问下大家

package sds;
import java.util.Scanner;

public class Test77 {
public static void main(String[] args){
double a,b,c; //三边长度
double m,s; //面积为m,周长为s
System.out.println("请输入三角形的三边abc的值:");
Scanner scan=new Scanner(System.in);
System.out.println("请输入a的值:");
a=scan.nextDouble();
System.out.println("请输入b的值:");
b=scan.nextDouble();
System.out.println("请输入c的值:");
c=scan.nextDouble();
if((a+b)>c){
s=(a+b+c)*0.5;
//System.out.println(+s);
s=(s*(s-a)*(s-b)*(s-c)) ;
m=Math.sqrt(s);
System.out.println("三角形面积为:"+m);
}
else {
System.out.println("该三边无法构成三角形,请重新输入");

    }

}

}
//在输入的三角形三边无法构成三角形的情况下,如何编写,让它调回到输入部分

  • 写回答

3条回答

  • Smile_IT_life 2017-01-13 07:47
    关注

    package sds;
    import java.util.Scanner;
    public class Test77 {
    public static void main(String[] args){
    while(true){
    double a,b,c; //三边长度
    double m,s; //面积为m,周长为s
    System.out.println("请输入三角形的三边abc的值:");
    Scanner scan=new Scanner(System.in);
    System.out.println("请输入a的值:");
    a=scan.nextDouble();
    System.out.println("请输入b的值:");
    b=scan.nextDouble();
    System.out.println("请输入c的值:");
    c=scan.nextDouble();
    if((a+b)>c){
    s=(a+b+c)*0.5;
    //System.out.println(+s);
    s=(s*(s-a)*(s-b)*(s-c)) ;
    m=Math.sqrt(s);
    System.out.println("三角形面积为:"+m);
    }
    else {
    System.out.println("该三边无法构成三角形,请重新输入");
    }
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))
  • ¥20 5037端口被adb自己占了