0
点赞
收藏
分享

微信扫一扫

自定义异常:从键盘输入三个数字,输出三角形的面积;

人间四月天i 2022-04-29 阅读 61
eclipsejava

 

题目:

1、从键盘输入三个数字,输出三角形的面积;

2、如果输入的三条边不能构成三角形,报出自定义的错误提示信息;

3、使用try…catch…finally的方式处理异常,无论是否成功,都要输出“测试完毕!”的信息;

package homework_nine;
public class TriangleException extends Exception{//自定义异常类
	public TriangleException(String message) {
		super(message);
	}
}
public class Triangle {//自定义Triangle类

	int a,b,c;//定义三角形三边
	double s,p;//定义三角形面积、周长
	public Triangle(int a, int b, int c) throws TriangleException {//定义构造方法
		this.a = a;//初始化变量
		this.b = b;
		this.c = c;
		if(a+b<c||b+c<a||a+c<b) {//不满足条件
			throw new TriangleException("输入的三条边不能构成三角形!");//抛出自定义异常
		}else {
			double x;
			x=(a+b+c)/2.0;
			s=Math.sqrt(x*(x-a)*(x-b)*(x-c));//计算三角形的面积
			System.out.println(s);//输出面积
		}
	}
	
import java.util.Scanner;

public class Test {//定义测试类

	public static void main(String[] args) throws TriangleException {
		// TODO Auto-generated method stub
		Scanner input=new Scanner(System.in);//定义扫描键盘输入的对象
		int a,b,c;//定义三角形的三条边
		a=input.nextInt();//从键盘输入文本,对三角形的三边赋值
		b=input.nextInt();
		c=input.nextInt();	
		try {//处理异常
			Triangle t=new Triangle(a,b,c);//创建三角形的对象
		}catch(TriangleException e) {
			e.printStackTrace();//打印异常信息在程序中出错的位置及原因。
		}finally {
			System.out.println("测试完毕!");//输出信息
		}
	}

}

 

 

 

举报

相关推荐

0 条评论