100题_08 求1+2+...+n
生活随笔
收集整理的這篇文章主要介紹了
100题_08 求1+2+...+n
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字以及條件判斷語句(A?B:C)。
using?namespace?std;
class?Sum
{
public:
????Sum()
????{
????????sum?+=?++n;
????}
????static?void?Reset();
????static?int?GetSum();
private:
????static?int?n;
????static?int?sum;
};
void?Sum::Reset()
{
????n?=?0;
????sum?=?0;
}
int?Sum::GetSum()
{
????return?sum;
}
int?Sum::n?=?0;
int?Sum::sum?=?0;
int?sum(const?int?&n)
{
????Sum?*s?=?new?Sum[n];
????delete[]?s;
????return?Sum::GetSum();
}
int?main()
{
????cout<<sum(100)<<endl;
????return?0;
}
利用類得構造函數
?
View Code #include?<iostream>using?namespace?std;
class?Sum
{
public:
????Sum()
????{
????????sum?+=?++n;
????}
????static?void?Reset();
????static?int?GetSum();
private:
????static?int?n;
????static?int?sum;
};
void?Sum::Reset()
{
????n?=?0;
????sum?=?0;
}
int?Sum::GetSum()
{
????return?sum;
}
int?Sum::n?=?0;
int?Sum::sum?=?0;
int?sum(const?int?&n)
{
????Sum?*s?=?new?Sum[n];
????delete[]?s;
????return?Sum::GetSum();
}
int?main()
{
????cout<<sum(100)<<endl;
????return?0;
}
?
總結
以上是生活随笔為你收集整理的100题_08 求1+2+...+n的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQL Server 行列转换(1)
- 下一篇: 24款非常实用的CSS3工具终极收藏