Yahoo奇摩知識+ 將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+ 網站將會轉為唯讀模式。其他 Yahoo奇摩產品與服務或您的 Yahoo奇摩帳號都不會受影響。如需關於 Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。

更生 發問時間: 電腦與網際網路程式設計 · 1 0 年前

請問這題C++的問題有誰會,贈20點

n請以C++物件導向程式設計方式,設計一個具有將兩數作四則運算功能的類別,並於主程式中測試以此類別所產生之物件的執行結果是否正確。程式規格如下:

1.類別名稱:evaluator

2.成員變數:三個型態為double的變數a、b、result,存取權限均為「private」。

3.成員函數 (1)四個名稱分別為add, minus, plus, div的成員函數。

功能分別為將a與b兩數作加、減、乘、除運算,

並將運算結果assign給result。

(2) 一個名稱為get_result的成員函數,功能為回傳result的值。

4.建構子:有兩種型態(函數重載觀念)

(1) 預設建構子:將a設為0,b設為0。

(2) 另一建構子:接受的輸入參數為兩個整數x與y,

並將x值assign給a,將y值assign給b。

1 個解答

評分
  • 流風
    Lv 4
    1 0 年前
    最佳解答

    #include <iostream>

    class evaluator

    {

    public:

    void add();

    void minus();

    void plus();

    void div();

    double get_result() {return result;};

    evaluator();

    evaluator(int x,int y);

    private:

    double a,b,result;

    };

    evaluator::evaluator()

    {

    a=b=0;

    }

    evaluator::evaluator(int x,int y)

    {

    a = x;

    b = y;

    }

    void evaluator::add()

    {

    result = a + b;

    }

    void evaluator::minus()

    {

    result = a-b;

    }

    void evaluator::plus()

    {

    result = a*b;

    }

    void evaluator::div()

    {

    if(b == 0)

    {

    std::cout<<"div zero!!!"<<std::endl;

    return;

    }

    result = a/b;

    }

    int main()

    {

    evaluator e1;

    evaluator e2 = evaluator(5,6);

    e1.add();

    std::cout << e1.get_result() << std::endl;

    e1.minus();

    std::cout << e1.get_result() << std::endl;

    e1.plus();

    std::cout << e1.get_result() << std::endl;

    e1.div();

    std::cout << e1.get_result() << std::endl;

    e2.add();

    std::cout << e2.get_result() << std::endl;

    e2.minus();

    std::cout << e2.get_result() << std::endl;

    e2.plus();

    std::cout << e2.get_result() << std::endl;

    e2.div();

    std::cout << e2.get_result() << std::endl;

    system("pause");

    }

    2010-05-16 23:43:50 補充:

    其實你同學問過囉

    你是第三個問的

    我還是加減賺點數XD

還有問題?馬上發問,尋求解答。