Java

您所在的位置:网站首页 棱长为4的正四棱锥的表面积 Java

Java

2024-07-08 15:06| 来源: 网络整理| 查看: 265

Java—计算长方体、四棱锥的表面积和体积

Description 计算如下立体图形的表面积和体积。 在这里插入图片描述 从图中观察,可抽取其共同属性到父类Rect中:长度:l 宽度:h 高度:z

在父类Rect中,定义求底面周长的方法length( )和底面积的方法area( )。

定义父类Rect的子类立方体类Cubic,计算立方体的表面积和体积。其中表面积area( )重写父类的方法。

定义父类Rect的子类四棱锥类Pyramid,计算四棱锥的表面积和体积。其中表面积area( )重写父类的方法。

输入立体图形的长(l)、宽(h)、高(z)数据,分别输出长方体的表面积、体积、四棱锥的表面积和体积。

Input 输入多行数值型数据(double);

每行三个数值,分别表示l h z

若输入数据中有非正数,则不表示任何图形,表面积和体积均为0。

Output 行数与输入相对应,数值为长方体表面积 长方体体积 四棱锥表面积 四棱锥体积(中间有一个空格作为间隔,数值保留两位小数)

Sample Input 1 2 3 0 2 3 -1 2 3 3 4 5 Output 22.00 6.00 11.25 2.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 94.00 60.00 49.04 20.00 Hint 四棱锥体公式:V=1/3Sh,S——底面积 h——高

import java.util.Scanner; class Rect { double l, h, z; public Rect(double l, double h, double z) { if (l > 0 && h > 0 && z > 0) { this.l = l; this.h = h; this.z = z; } } public double length() { return 2 * (l + h); } public double area() { return l * h; } } class Cubic extends Rect { public Cubic(double l, double h, double z) { super(l, h, z); } public double area() { return 2 * l * h + 2 * l * z + 2 * h * z; } public double v() { return l * h * z; } } class Pyramid extends Rect { public Pyramid(double l, double h, double z) { super(l, h, z); } public double area() { double s1 = Math.sqrt((l / 2) * (l / 2) + z * z); double s2 = Math.sqrt((h / 2) * (h / 2) + z * z); return s1 * h + s2 * l + super.area(); } public double v() { return super.area() * z * 1 / 3; } } public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner reader = new Scanner(System.in); double l, h, z; while (reader.hasNext()) { l = reader.nextDouble(); h = reader.nextDouble(); z = reader.nextDouble(); Cubic cubic = new Cubic(l, h, z); Pyramid pyramid = new Pyramid(l, h, z); System.out.printf("%.2f %.2f %.2f %.2f\n", cubic.area(), cubic.v(), pyramid.area(), pyramid.v()); } } }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3