C++ 入門指南 4.01
練習 11.4 參考程式 - 練習替費氏數列類別加入存取函數與修改函數
// 引入標準程式庫中相關的輸入、輸出程式 #include <iostream> // std 為標準程式庫的命名空間 using namespace std; // 宣告 FibonacciDemo 類別 class FibonacciDemo { // 宣告 public 成員 public: void set_value(int); int get_value(); void Compute(int); // 宣告 private 成員 private: int value; }; // 實作 setter 成員函數 void FibonacciDemo::set_value(int v) { value = v; } // 實作 getter 成員函數 int FibonacciDemo::get_value() { return value; } // 實作 FibonacciDemo 的 Compute() 成員函數 void FibonacciDemo::Compute(int p) { // 計算費氏數列的數字 if (p == 1 || p == 2) { set_value(1); } else { // 計算到 n 的費氏數列數字 int n1 = 1; int n2 = 1; int n3; for (int i = 3; i <= p; i++) { n3 = n1 + n2; n1 = n2; n2 = n3; } set_value(n3); } } int main(void) { // 宣告建立 FibonacciDemo 物件 FibonacciDemo a; // 接收使用者輸入 int input; cin >> input; // 印出使用者指定的階層數 cout << endl; a.Compute(input); cout << a.get_value() << endl; cout << endl; // 最後回傳 0 給作業系統 return 0; } /* 《程式語言教學誌》的範例程式 http://kaiching.org/ 檔名:exercise1104.cxx 編譯:g++ exercise1104.cxx 執行:./a.out 功能:C++入門指南單元十一的練習 作者:張凱慶 */