C++ 的題目~~~(20點拜託了)

1.請設計一個程式計算下列級數到第n項的總和,其中n可由使用者輸入。

1+(1/2)+(1/4)+(1/8)+(1/16)+…..

哪位大大會寫的= =

謝囉~

已更新項目:

#include

void main()

{

char number,total,n;

cout<<"請輸入n值:"<

>n;

for(number=1,total=0;number<=(0.5)^(n-1);number*=0.5)

{

cout<

2 個已更新項目:

這是我自己打的程式

我們老師沒有交次方的寫法耶= =

可以交我嗎

還有阿

number*=0.5 遞減這邊不能這樣打嗎??

我想要每出現一次number就乘0.5

誰能幫我改錯誤勒>

3 個已更新項目:

#include

void main()

{

char number,total,n;

cout<<"請輸入n值:"<

>n;

2 個解答

評分
  • Ashley
    Lv 7
    1 0 年前
    最佳解答

    #include <iostream>

    #include <cmath>

    using namespace std;

    int main() {

    int i, n;

    double sum = 0;

    cout << "請輸入有 n 項:"; cin >> n;

    for( i = 1; i <= pow( (double)2, n - 1 ); i *= 2 ){

    sum += (double)1 / i;

    }

    cout << "總和:" << sum << endl;

    system("pause");

    return 0;

    }

    2007-10-21 21:21:56 補充:

    /* main 前面加上以下程式碼 */

    int p( int n ) {

    int i, sum = 1;

    for ( i = 1; i < n; i++ )

    sum *= 2;

    return sum;

    }

    /* pow( (double)2, n - 1 ) 改成 p(n) */

    參考資料: 個人的程式設計經驗
  • 1 0 年前

    強者啊~我是電腦白痴XD

還有問題?馬上發問,尋求解答。