第1關 撰寫一個代表三角形的類
package step1;
import java.util.Scanner;
public class Triangle {
// 自行設計類的實作
/********** Begin **********/
private double a;
private double b;
private double c;
public Triangle(double a, double b, double c) {
this.a = a;
this.b = b;
this.c = c;
}
public double getArea() {
double p = (a + b + c) / 2;
return Math.sqrt(p * (p - a) * (p - b) * (p - c));
}
public double getPerimeter() {
return a + b + c;
}
//@Override
public String toString() {
return String.format("三角形(%.1f,%.1f,%.1f)", a, b, c);
}
/********** End **********/
public static void main(String[] args) {
/********** Begin **********/
Scanner sc = new Scanner(System.in);
double a,b,c; //定義三條邊
a = sc.nextDouble();
b = sc.nextDouble();
c = sc.nextDouble();
Triangle t1 = new Triangle(a, b, c);
//輸出面積
System.out.println(t1 + "的面積為:" + String.format("%.2f", t1.getArea()));
//輸出周長
System.out.println(t1 + "的周長為:" + String.format("%.2f", t1.getPerimeter()));
/********** End **********/
}
}
第2關 撰寫一個圓環類
package step2;
public class Ring {
/********** Begin **********/
//自行設計類的實作
private double innerRadius; //內半徑
private double outerRadius; //外半徑
private String color; //顏色
//構造方法
public Ring(double innerRadius, double outerRadius, String color){
this.innerRadius = innerRadius;
this.outerRadius = outerRadius;
this.color = color;
}
//計算圓環面積
public double area() {
return Math.PI * (outerRadius * outerRadius - innerRadius * innerRadius);
}
//計算圓環外圓周長
public double perimeter() {
return 2 * Math.PI * outerRadius;
}
//計算圓環內圓周長
public double innerPerimeter() {
return 2 * Math.PI * innerRadius;
}
//getter和setter方法
public double getInnerRadius() {
return innerRadius;
}
public void setInnerRadius(double innerRadius) {
this.innerRadius = innerRadius;
}
public double getOuterRadius() {
return outerRadius;
}
public void setOuterRadius(double outerRadius) {
this.outerRadius = outerRadius;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
/********** End **********/
public static void main(String[] args) {
Ring ring = new Ring(5, 8, "red");
System.out.printf("圓環的內半徑: %.1f\n", ring.getInnerRadius());
System.out.printf("圓環的外半徑: %.1f\n", ring.getOuterRadius());
System.out.println("圓環的顏色: " + ring.getColor());
System.out.printf("圓環的面積: %.2f\n", ring.area());
System.out.printf("圓環的外圓周長: %.2f\n", ring.perimeter());
System.out.printf("圓環的內圓周長: %.2f\n", ring.innerPerimeter());
System.out.println();
ring.setInnerRadius(4);
ring.setOuterRadius(6);
ring.setColor("blue");
System.out.printf("圓環的內半徑: %.1f\n", ring.getInnerRadius());
System.out.printf("圓環的外半徑: %.1f\n", ring.getOuterRadius());
System.out.println("圓環的顏色: " + ring.getColor());
System.out.printf("圓環的面積: %.2f\n", ring.area());
System.out.printf("圓環的外圓周長: %.2f\n", ring.perimeter());
System.out.printf("圓環的內圓周長: %.2f\n", ring.innerPerimeter());
}
}
第3關 撰寫一個學生類
package step3;
public class Student {
/********** Begin **********/
// 自行設計類的實作
// 成員變數
private int id; // 學號
private int age; // 年齡
private String name; // 姓名
// 構造方法
public Student(int id, int age, String name) {
this.id = id;
this.age = age;
this.name = name;
}
// getter方法
public int getId() {
return id;
}
public int getAge() {
return age;
}
public String getName() {
return name;
}
// toString方法,回傳學生的字串表示
public String toString() {
return "學號:" + id + ",姓名:" + name + ",年齡:" + age;
}
/********** End **********/
public static void main(String args[]) {
Student s1 = new Student(1, 18, "小明");
Student s2 = new Student(2, 20, "小張");
Student s3 = new Student(3, 19, "小李");
Student s4 = new Student(4, 18, "小王");
Student s5 = new Student(5, 20, "小趙");
Student s[] = { s1, s2, s3, s4, s5 }; // 給物件陣列賦值
System.out.println("班級學生名單如下:");
output(s); // 第1次呼叫output方法輸出陣列
/********** Begin **********/
// 將所有學生年齡加 1
for (int i = 0; i < s.length; i++) {
s[i].age++;
}
/********** End **********/
System.out.println("所有學生年齡加 1 后...");
output(s); /// 第2次呼叫output方法輸出陣列
int count = 0;
/********** Begin **********/
//統計大于20歲的學生個數
for (int i = 0; i < s.length; i++) {
if (s[i].age > 20) {
count++;
}
}
/********** End **********/
System.out.println("大于 20 歲人數是:" + count);
}
/* 以下方法輸岀學生陣列的所有元素 */
private static void output(Student s[]) {
for (int i = 0; i < s.length; i++)
System.out.println(s[i]);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/552790.html
標籤:Java
下一篇:返回列表
