[算法练习]求1+2+…+n

View Code
 1 /*
 2 题目:求1+2+…+n,
 3 要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。
 4 */
 5 
 6 
 7 class Calculation
 8 {
 9 public:
10     Calculation()
11     {
12         ++n;
13         sum+=n;
14     }
15     static void Reset()
16     {
17        n=0;
18        sum=0;
19     }
20     static int GetSum()
21     {
22        return sum;
23     }
24 private:
25     static int n;
26     static int sum;
27 };
28 
29 int main()
30 {
31     int n;
32     cin >>n;
33     Calculation::Reset();
34     Calculation* tmp=new Calculation[n];
35     delete [] tmp;
36     
37     cout <<"1+2+...+n="<<Calculation::GetSum()<<endl;
38     return 0;
39 }

 

posted @ 2012-05-16 15:37  Cavia  阅读(365)  评论(0编辑  收藏  举报