[算法练习]求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 }

 

你可能感兴趣的:(算法)