Re: [問題] 一些關於數學的問題

看板C_and_CPP作者 (none)時間12年前 (2012/03/29 14:47), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串3/4 (看更多)
首先感謝tropical72還有NEWG5以及多位板友的意見 m(_ _)m 我先把題目做了點小修正變成 設方程式如下: A[1] A[2] A[n] f(x)=A[0]+ ── + ── +...───── x x^2 x的i次方 A[0]<0 , 1<x<2 , n<=10 n==0時程式結束 然後以下是修正後的程式碼 #include<stdio.h> #include<math.h> int main() { int n; int a[10]; int i; double sum=0; while(1) { scanf("%d",&n); if(n==0) break; else for(i=0;i<n;i++) { scanf("%d",&a[i]); sum=sum+a[i]; } int x; double low=0; double up=1; double temp1; double temp2; double temp3; while(1) { for(i=0;i<=n;i++) { sum=sum+a[i]/pow(x,i); } x=low; temp1=sum; x=up; temp2=sum; x=(low+up)/2; temp3=sum; if (pow(10.0,4.0)*(sum-a[0])==pow(10.0,4.0)*abs(a[0])) { printf("%d%%",x); break; } else if((temp1>0 && temp3>0) || (temp1<0 && temp3<0)) { low=x; continue; } else if((temp2>0 && temp3>0) || (temp2<0 && temp3<0)) { up=x; continue; } } } return 0; } 目前寫出來compile會過 可是程式輸出的結果不對@@ 請問我有哪裡需要修正的嗎? 再次麻煩各位大大了!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.242.172

03/29 17:08, , 1F
C 語言是講一動做一動 不是你先寫完式子才代值的
03/29 17:08, 1F
文章代碼(AID): #1FT0Lx3K (C_and_CPP)
文章代碼(AID): #1FT0Lx3K (C_and_CPP)