作者jeunder (omega~ oh my god)
看板CSSE
標題Re: [閒聊] 被制約的頭腦
時間Fri May 27 16:14:09 2005
我覺得這樣寫比較有趣 :p
int r = 0;
for(int a = 10; a <= 10000; ++a) r += a;
ofstream outf("ans.cpp");
outf << "#include <iostream>" << endl
<< "int main() {" << endl
<< " std::cout << \"10 + 11 + ... + 10000 = "
<< r << "\" << endl;" << endl
<< "}" << endl;
※ 引述《giive (lala)》之銘言:
: 從 10 加到 10000 的程式要怎麼寫
: 10000個programer應該有9990個會用for或是類似的迴圈寫
: int result=0;
: for(int a = 10 ; a <=10000 ; a++){
: result += a;
: }
: 一定只能這樣寫嗎??
: int a =10 , b=10000 , result = 0;
: result = (a+b)*(b-a+1)/2 ; -------> 小學的梯形運算
: 用for是得跑 9990次的加法運算
: 用梯形運算只需要 三次加法(減也算加) 一次整數乘 一次整數除
: 因為是除以2 , 應該還可以用shift的方式加速
: 有一股蛋蛋的憂傷
: 我的頭腦有一種被制約的感觸
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.226.213
1F:推 Eventis:這好像跟傳說中的印出自己的code不太一樣@@? 61.62.49.43 05/27
2F:→ Eventis:那個code用了一個好神奇的macro...Orz.. 61.62.49.43 05/27
3F:推 spanky:可不可以請問一下第3行後面把CODE印到檔案裡是要 140.113.93.175 05/27
4F:→ spanky:幹什麼呀? 140.113.93.175 05/27