Yahoo奇摩知識+將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+服務將會轉為唯讀模式。其他Yahoo奇摩產品與服務或您的Yahoo奇摩帳號都不會受影響。如需關於Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。

cheng 發問時間: 電腦與網際網路程式設計 · 2 年前

試寫一程式, 利用巨集的方式,計算下面式子中, 到第n項的 和, n值由鍵盤輸入取得。 1/1+1/2+1/3+...+1/n 大神幫幫忙?

已更新項目:

試寫一程式,C++ 利用巨集的方式,計算下面式子中, 到第n項的 和, n值由鍵盤輸入取得。 1/1+1/2+1/3+...+1/n 大神幫幫忙?

8 個解答

評分
  • 2 年前

    #include<stdio.h>

    #define S0(n, r) do{int i; for(r=0.0, i=n; 0<i; --i)r += 1.0/i;} while (0)

    int main(){

    double s;

    int n;

    for(; printf("enter n: "

    && scanf("%d",&n)

    && 0 < n

    ;}{

    S0(n, s);

    printf("%lf\n",s);

    }

    return 0;

    }

  • 6 個月前

    echo

    type id,,n

    input ,n

    Print 1 into n 

    1/1+1/2+1/3…1/n項求,第n項?

    dim n

    for n

    if  n=n+1

    I,y=axy=ax^2+bx+c=0 bx+cnext fo next edbn1 is rust

    I the y

    ax=

    end

  • 7 個月前

    最好的方法是分母通分後,再進行分數的加法,否則可能會導致小數點後太多位數不精確。

    然後用C++首先應該要先

    #include <iostream>

    再進行後續的運算。

    參考資料: 自己
  • 2 年前

    在EXCEL內 A1格填入N(目前設定N為正整數且大於1) 則A2格出現你要的答案

    開啟VBA功能 貼入以下程式

    如果還是不會操作 我已寫好程式 再向我索取吧

    EMAIL=jiahnjang@gmail.com

    以下為程式碼

    Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address(0, 0) = "A1" Then

    Dim A As Integer

    Dim N As Integer

    A = 1

    N = Range("A1").Value

    Range("A2").Value = 0

    Do While Range("A1").Value <> (A - 1)

    Range("A2").Value = Range("A2").Value + (1 / A)

    A = A + 1

    Loop

    End If

    End Sub

  • p
    Lv 7
    2 年前

    你用哪一種電腦程式語言?

  • 2 年前

    N=[a1]

    For ii = 1 to n

    aa=1/ii

    bb=bb+aa

    Next

    [b1]=bb

  • 2 年前

    c語言喔

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