weixin_52386338 2021-10-12 17:02 采纳率: 83.3%
浏览 35
已结题

各位,给我看看这个代码哪的问题,给我改改呗

题目1、定义一个接口,包括两个方法:求三角形面积和求圆面积;2、自定义异常类:当三角形的两边长度之和小于第三边,抛出异常;3、定义一个类,实现上述接口,及异常处理;4、在PUBLIC CLASS中通过键盘输入相应的数值, 当发生异常时,程序会提示异常; 当没有异常发生时,程序会正确输出所求结果;

img


package hexianlan;
import java.util.Scanner;
interface A{
public void s(int a,int b,int c);
public void y(int x);
}//接口
class MyException extends Exception{
String message;
public MyException(){
message="两边之和小于第三边";
}
public String getMessage() {
return message;
}
}//自定义异常类
class B implements A{
public void s(int a,int b,int c) throws MyException{
if(a+b<c||a+c<b||b+c<a) {
MyException ex=new MyException();
throw(ex);
}
double s=(a+b+c)/2;
System.out.printf("三角形的面积为:",s);
}
public void y(int x) {
double sy=xx3.14;
System.out.printf("圆的面积为:",sy);
}
}
public class hxl {
public static void main(String arga[]) {
B b=new B();
Scanner sc=new Scanner(System.in);
int x1,x2,x3,x4;
try {
System.out.println("输入三角形的三边:");
x1=sc.nextInt();
x2=sc.nextInt();
x3=sc.nextInt();
b.s(x1,x2,x3);
System.out.println("输入三角形的三边:");
x1=sc.nextInt();
x2=sc.nextInt();
x3=sc.nextInt();
b.s(x1,x2,x3);
System.out.println("输入圆的半径:");
x4=sc.nextInt();
b.y(x4);
}
catch (MyException e) {
System.out.println(e.getMessage());
}
}
}

  • 写回答

1条回答 默认 最新

  • 码仔ROC 2021-10-12 17:20
    关注

    classB中输出改为

    System.out.printf("三角形的面积为:"+s);
    
    double sy=Math.pow(x,2)*3.14;
    System.out.printf("圆的面积为:"+sy);
    
    

    class hxl中多一次三边输入吧

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月11日
  • 已采纳回答 12月3日
  • 创建了问题 10月12日

悬赏问题

  • ¥15 哪个tomcat中startup一直一闪而过 找不出问题
  • ¥15 这个怎么改成直流激励源给加热电阻提供5a电流呀
  • ¥50 求解vmware的网络模式问题 别拿AI回答
  • ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
  • ¥15 springboot 3.0 实现Security 6.x版本集成
  • ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
  • ¥30 请帮我解决一下下面六个代码
  • ¥15 关于资源监视工具的e-care有知道的嘛
  • ¥35 MIMO天线稀疏阵列排布问题
  • ¥60 用visual studio编写程序,利用间接平差求解水准网