編寫一個 Java 應用程式,該程式中有 3 個類:Triangle、T rapezium 和 Circle,分別用來 表示三角形、梯形和圓形。
Java 應用程式,該程式中有 3 個類:Triangle、T rapezium 和 Circle,分別用來 表示三角形、梯形和圓形。
具體要求如下。
Triangle 類具有型別為 double 的三個邊、周長以及面積屬性,Triangle 類具有構造方法初始化屬性和返回周長、面積以及修改三個邊的功能。另外,Triangle 類還具有一個 boolean 型的屬性,該屬性用來判斷三個數能否構成一個三角形。
Trapezium 類具有型別為 double 的上底、下底、高以及面積屬性,具有構造方法初始化屬性和返回面積的功能。
Circle 類具有型別為double的半徑、周長以及面積屬性,具有構造方法初始化屬性和返回周長、面積的功能。
生成例項測試該類。
import java.text.DecimalFormat;
import java.util.Scanner;
//三角形
class Triangle {
double x;
double y;
double z;
double c = 0;
double area = 0;
public Triangle() {
}
public void change(double a, double b, double c, double e, double f, double g) {
a = e;
b = f;
c = g;
}
public boolean judge(double x, double y, double z) {
if ((x + y > z) && (x + z > y) && (z + y > x)) {
return true;
} else {
return false;
}
}
public void area(double x, double y, double z) {
boolean g = true;
double d;
if (g == judge(x, y, z)) {
c = x + y + z;
d = c / 2;
area = Math.sqrt(d * (d - x) * (d - y) * (d - z));
System.out.println("面積為:" + area);
System.out.println("周長為:" + c);
} else {
System.out.println("輸入不能構成三角形,請重新輸入!");
}
}
}
//梯形的類
class Trapezium1 {
double a;
double b;
double c;
public Trapezium1(double m, double n, double h) {
a = m;
b = n;
c = h;
}
public double getTrArea() {
return (a + b) * c / 2;
}
}
//圓
class Circle2 {
double r;
public Circle2(double r1) {
r = r1;
}
public String getArea() {
DecimalFormat df = new DecimalFormat("0.0000");
return df.format(Math.PI * r * r);
}
public String getPerimeter() {
DecimalFormat df = new DecimalFormat("0.0000");
return df.format(2 * Math.PI * r);
}
}
public class 三角形的AP型 {
public static void main(String[] args) {
System.out.println("請輸入 s或y再或者t,分別進行運算");
Scanner sc = new Scanner(System.in);
char sb = sc.next().charAt(0);
switch (sb) {
case 's': {
System.out.println("請輸入三個數字,來構成一個三角形:");
double x = sc.nextDouble();
double y = sc.nextDouble();
double z = sc.nextDouble();
boolean s;
//建立物件
Triangle td = new Triangle();
td.judge(x, y, z);
td.area(x, y, z);
//分割線
System.out.println("-------------------分割線---------------------");
s = td.judge(x, y, z);
//修改三角形的三條邊
System.out.println("修改三條邊:");
double x1 = sc.nextDouble();
double y1 = sc.nextDouble();
double z1 = sc.nextDouble();
td.change(x, y, z, x1, y1, z1);
if (s == true) {
System.out.println("修改後能夠成一個三角形");
td.area(x1, y1, z1);
} else {
System.out.println("修改後不能構成一個三角形");
}
/* if (s == false) {
//再次給值
Scanner sd = new Scanner(System.in);
double a = sd.nextDouble();
double b = sd.nextDouble();
double c = sd.nextDouble();
td.area(a, b, c);
System.out.println("-------------------分割線---------------------");
s = td.judge(x, y, z);
}*/
break;
}
case 'y': {
System.out.println("請輸入圓半徑:");
double r = sc.nextDouble();
Circle2 c = new Circle2(r);
System.out.println("圓的面積為:" + c.getArea());
System.out.println("圓的周長為" + c.getPerimeter());
System.out.println("請輸入梯形的上底和下底及高:");
break;
}
case 't':
{
System.out.println("請輸入梯形的上底下底及其高:");
double d1=sc.nextDouble();
double d2=sc.nextDouble();
double h=sc.nextDouble();
Trapezium1 t=new Trapezium1(d1,d2,h);
System.out.println("梯形的面積為:" + t.getTrArea());
break;
}
}
}
}
相關文章
- 編寫第一個HADOOP應用程式Hadoop
- 30分鐘編寫一個Flask應用Flask
- 用Java編寫一個最簡單的桌面程式Java
- Xamarin iOS編寫第一個應用程式建立工程iOS
- 編譯和分發 Chez Scheme 應用程式編譯Scheme
- 編寫安全PHP應用程式的七個習慣PHP
- 在linux下用vim編寫一個C程式LinuxC程式
- 用 Python 編寫一個國際象棋 AI 程式PythonAI
- Javascript | 分別用async await非同步方法和Promise來實現一個簡易的求職程式JavaScriptAI非同步Promise求職
- 用PHP編寫Android應用程式PHPAndroid
- 用 PHP 寫一個"程式語言"PHP
- 第一個 Angular 應用程式Angular
- 用 react+moox 五分鐘寫一個 todomvc 應用ReactMVC
- 用VB編寫一個彈出選單類 (轉)
- SVG <circle> 繪製圓形SVG
- Flutter學習指南:編寫第一個應用Flutter
- 使用 Docker 和 Elasticsearch 構建一個全文搜尋應用程式DockerElasticsearch
- 用perl寫的一個watchdog程式
- 編寫第一個Qt程式QT
- 用JAVA寫一個阿里雲VPC Open API呼叫程式Java阿里API
- 編寫多執行緒應用程式,模擬多個人通過一個山洞:執行緒
- Qt 編寫應用支援多語言版本--一個GUI應用示例QTGUI
- CSS3梯形效果程式碼例項CSSS3
- 結合URL類來中止一個程式,該如何做?
- 使用PyQt來編寫第一個Python GUI程式QTPythonGUI
- 應用程式和Activity
- Flutter學習指南:編寫第一個Flutter應用Flutter
- Flutter入坑指南:編寫第一個Flutter應用Flutter
- ModernUI教程:第一個ModernUI應用(手動編寫)UI
- java程式中編譯另一個java程式Java編譯
- 淺談 MFC 的子類化機制和該機制的一個應用(2) (轉)
- 淺談 MFC 的子類化機制和該機制的一個應用(1) (轉)
- 程式設計面試題:編寫一個會造成資料庫死鎖的應用程式設計面試題資料庫
- 用CSS畫一個帶陰影的三角形CSS
- 一個用c#寫的掃描asp原始碼漏洞的應用程式C#原始碼
- 如何學習用Java編寫程式碼?Java
- 編寫友好的命令列應用程式命令列
- 編寫iOS應用程式有何不同iOS