自己编写了一个计算三角形面积的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("该三边无法构成三角形,请重新输入");

    }

}

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

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("该三边无法构成三角形,请重新输入");
}
}

while(true) {
//判断输入$符号结束
你的代码
.
.
.
.
计算
}

public static void main(String[] args){
double a,b,c; //三边长度
double m,s; //面积为m,周长为s
boolean flag = true;
while(flag){
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);
flag = false;
} else {
System.out.println("该三边无法构成三角形,请重新输入");
}
}
}