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);
- }
- }
留言
張貼留言