Java程序设计(八)作业

简介: Java程序设计(八)作业

1 //最后在主类中分别求解三角形和等边三角形的面积和周长
 2 //(注:在三角形和等边三角形的构造方法中添加三角形和等边三角形构成条件的判断,为flag赋值)。
 5 import java.util.*;
 6 public class p_12 {
 7     public static void main(String[] args)
 8     {
 9     
10 //        while(3>0){
11         System.out.println("请分别输入三角形的三条边:");
12         try (Scanner p = new Scanner(System.in)) {
13             double a=p.nextDouble();
14             double b=p.nextDouble();
15             double c=p.nextDouble();
16             Trangle_two triangle=new Trangle_two(a, b, c);
17             equilateral_triangle s1=new equilateral_triangle(a, b, c);
18                 if(triangle.flag)
19                 {
20                 System.out.println("-------------------");
21                 System.out.println("三角形的面积为: "+triangle.getArea());
22                 System.out.println("三角形的周长为: "+triangle.getGirth());
23                 }
24                 if(equilateral_triangle.flag2)
25                 {
26                     System.out.println("-------------------");
27                     s1.show();
28                     System.out.println("-------------------");
29                 }
30                 else {
31                     System.out.println("-------------------"); 
32                 }
33                 
34         }
35 }
36     }
37 //}
//题目:编写一个三角形类,定义六个成员变量,包括三边(a、b、c)、面积(area)、周长(girth)和三角形构成标志(flag),
//再定义构造方法、求面积和求周长的方法。
//创建该类的子类——等边三角形类,定义一个成员变量h,表示高,
//再定义构造方法、一个求高的方法并重写求面积的方法。
//最后在主类中分别求解三角形和等边三角形的面积和周长
//(注:在三角形和等边三角形的构造方法中添加三角形和等边三角形构成条件的判断,为flag赋值)。
public class Trangle_two {
            public double a,b,c;
            public double area;
            double girth;
            public boolean flag;//true false
            public Trangle_two(double a,double b,double c){
            if(a+b>c&&a+c>b&&b+c>a){
                flag=true;
                this.a=a;
                this.b=b;
                this.c=c;
                System.out.println("-------------------");
                System.out.println("三角形!");
            }
            else
            {
                flag=false;
                System.out.println("对不起,您输入的非三角形!");
            }
            }
            double getArea()
            {
                double p=1/2.0*getGirth();
                area=Math.sqrt(p*(p-a)*(p-b)*(p-c));
                return area;
            }
            double getGirth()
            {
                girth=a+b+c;
                return girth;
            }
    }
//创建该类的子类——等边三角形类,定义一个成员变量h,表示高,
//再定义构造方法、一个求高的方法并重写求面积的方法。
class equilateral_triangle extends Trangle_two{
    public equilateral_triangle(double a, double b, double c) {
        super(a, b, c);
        super.getArea();
        if(a+b>c&&a+c>b&&b+c>a&&a==b&&b==c&&c==a){
            flag2=true;
            System.out.println("等边三角形!");
        }
        else
        {
            flag2=false;
            System.out.println("对不起,你输入的非等边三角形!");
        }
        }
    double h;
    double area_2;
    double girth_2;
    public static boolean flag2;//true false
    public double high(double h){
        this.h=h;
        return h;
    }
    double getH(){
        h=area*2/a;
        return h;
    }
    double getArea_2()
    {
        area_2=(a*h)/2;
        return area_2;
    }
    double getGirth_2()
    {
        girth_2=a+b+c;
        return girth;
    }
    public void show() {
        System.out.println("等边三角形的高为: "+getH());
        System.out.println("等边三角形的面积为: "+getArea_2());
        System.out.println("等边三角形的周长为: "+getGirth_2());
    }
}
相关文章
|
3月前
|
Java
Java基础学习day08-作业
本作业涵盖Java中Lambda表达式的应用,包括Runnable与Comparator接口的简化实现、自定义函数式接口NumberProcessor进行加减乘及最大值操作,以及通过IntProcessor处理整数数组,实现遍历、平方和奇偶判断等功能,强化函数式编程实践。
84 5
|
3月前
|
Java
Java基础学习day07-作业
本作业包含六个Java编程案例:1)动物类继承与多态;2)加油卡支付系统;3)员工管理类设计;4)学生信息统计接口;5)USB设备控制;6)家电智能控制。综合运用抽象类、接口、继承、多态等面向对象技术,强化Java基础编程能力。
187 3
|
3月前
|
Java
Java基础学习day06-作业
本内容为Java基础学习作业,涵盖两个案例:一是通过Card类及其子类GoldenCard、SilverCard实现加油卡系统,体现封装与继承;二是通过Shape类及子类Circle、Rectangle演示多态与方法重写,强化面向对象编程理解。
97 1
|
3月前
|
算法 Java
Java基础学习day03-作业
本内容包含多个Java编程案例,涵盖条件判断、循环、数组、随机数生成、素数判断等基础算法练习,适用于巩固Java语法与逻辑思维训练。
144 6
|
3月前
|
Java
Java基础学习day05-作业
本文为Java基础学习第五天作业,通过五个案例练习类与对象的定义、构造方法、set/get方法及成员方法的应用。涵盖女友、学生、教师、手机和电影等类的设计与测试,强化面向对象编程基础。
92 2
|
3月前
|
Java
Java基础学习day02-作业
本内容包含13个Java编程练习需求,涵盖变量定义、数据类型转换、运算符使用、键盘输入及条件判断等基础语法实践,适合初学者巩固Java核心基础知识。
109 5
|
3月前
|
Java
Java基础学习day04-作业
本作业包含8个Java编程案例,涵盖数组的定义与遍历、求和、最值计算、去极值求平均、元素倍增、二维数组行和计算及查找指定元素等内容,旨在巩固Java基础语法与数组操作技能。
251 1
|
Java
Java基础学习day01-作业
通过多个Java编程案例,学习变量定义、数据类型使用及控制台输出。涵盖字符串、数值、布尔值等字面量输出,变量赋值与修改,以及实际应用场景如学生信息和商品价格变化的模拟,夯实基础语法掌握。
136 0
|
Java Apache Maven
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
170 6
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
|
6月前
|
机器学习/深度学习 存储 算法
Java 大视界 -- Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用(165)
本文围绕 Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用展开,剖析作业现状与挑战,阐述技术原理及应用方法,结合案例与代码,给出具有实操性的解决方案。
Java 大视界 -- Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用(165)