Java_CH5_HW2
試設計一個程式,能計算浮點數的四則運算。
程式將按照 原 abstract ,extends 架構、加減乘除採 switch case 方式做判斷 、程式需作適度的修改。
請參考文件 :第五章作業參考文件.pdf
例 :
輸入運算符號 + 輸入兩數 30 8 30.0+ 8.0 兩數相加 = 38.0
輸入運算符號 – 30.0 – 8.0 兩數相減 = 22.0
輸入運算符號 * 30.0 * 8.0 兩數相乘 = 240.0
程式將按照 原 abstract ,extends 架構、加減乘除採 switch case 方式做判斷 、程式需作適度的修改。
請參考文件 :第五章作業參考文件.pdf
例 :
輸入運算符號 + 輸入兩數 30 8 30.0+ 8.0 兩數相加 = 38.0
輸入運算符號 – 30.0 – 8.0 兩數相減 = 22.0
輸入運算符號 * 30.0 * 8.0 兩數相乘 = 240.0
import java.util.*; public class Java_CH5_HW2 { public static void main(String[] args) { // TODO 自動產生的方法 Stub char opr = (char) -1; double num1 = 0, num2 = 0; Scanner scan = new Scanner(System.in); try { System.out.print("輸入運算符號:"); opr = (char) System.in.read(); System.out.print("輸入兩數:"); num1 = scan.nextDouble(); num2 = scan.nextDouble(); } catch (Exception e) { System.out.println(" Error: " + e.toString()); } My_abs_Calculation demo = new My_abs_Calculation(); switch (opr) { case '+': demo.addition(num1, num2); break; case '-': demo.subtraction(num1, num2); break; case '*': demo.multiplication(num1, num2); break; case '/': demo.division(num1, num2); break; default: System.out.println(" Unknown operation ! "); } } } abstract class abs_Calculation { double z; public void addition(double x, double y) { z = x + y; System.out.println(x + "+" + y + "兩數相加 : " + z); } public void subtraction(double x, double y) { z = x - y; System.out.println(x + "-" + y + "兩數相減 : " + z); } public abstract void division(double x, double y); } class My_abs_Calculation extends abs_Calculation { public void multiplication(double x, double y) { z = x * y; System.out.println(x + "*" + y + "兩數相乘後 : " + z); } public void division(double num1, double num2) { z = num1 / num2; System.out.println(num1 + "/" + num2 + "兩數相除 : " + z); } }
留言
張貼留言