看板 C_and_CPP 關於我們 聯絡資訊
超級基本題 我想寫程式計算 (1/x^2)+(1/x^3)+....+(1/x^n) 的值 x 與 n 是由鍵盤輸入 例如 若輸入 x=3 n=5 則應該輸出 0.16多 因為 (1/3^2)+(1/3^3)+(1/3^4)+(1/3^5)=0.16多 但是我打完程式後 我輸入3,5 則出現....ㄜ...反正就是不對~= = debug好久~~== ==~~明明很基本~~= = 以下是程式碼(我用Dev-C++ 寫的) ------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { float sum=0.0; //算總合 int n,x,i=1; //設變數 scanf("%d%d",&x,&n); //輸入變數值 for(i=1;i<=n-1;i++) //跑迴圈 { sum=sum+(1/(x^(i+1))); } printf("%f",sum); //輸出總合 system("pause"); return 0; } ------------------------------------------------------- 以上是程式碼 我是犯了~很基本的錯嗎? 請高手指教(我還是新手~講解不要太專業~我可能不懂) 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.133.252
loveme00835:沒有的語意...當然會錯 09/24 21:52
ot15:??? 09/24 21:53
kbasod:用pow() 09/24 21:54
purpose:^這個不是次方 09/24 21:55
x000032001:^為XOR運算 像你這樣應該開個變數紀錄分母來計算 09/24 21:59
ot15:感激~~ 09/24 22:06
loveme00835:有兩個地方要注意 : 1.整數除法會把小數點吃掉 2.用一 09/24 22:06
loveme00835:個變數從 2 次方每次進入迴圈都多一次方, 作為分母 09/24 22:07
nowar100:發問不要用這種沒有實際意義的標題 09/24 22:22
loveme00835:原po 已經消失了 = __ = 09/24 23:03
TsinTa:這種題目直接帶等比級數的公式解會不會比較好? 09/24 23:40
loveme00835:以準確度來講代公式會比較好, 如果是為了速度...等有 09/25 00:33
loveme00835:必要再做吧, 這樣的程式碼比較好trace 09/25 00:33
nvidia:運算規則先看熟來 09/25 00:55