Re: [問題] for迴圈這樣子寫對嗎?

看板C_and_CPP作者 (K211)時間13年前 (2010/09/13 15:35), 編輯推噓7(702)
留言9則, 8人參與, 最新討論串2/2 (看更多)
※ 引述《han999 (999就是久久久!)》之銘言: : 小弟對C不是很熟,想問一下我這樣子寫對嗎? : 在matlab底下我要做的是 : for i=0:1023 : mean=mean+A14results[index];; : end : mean=mean/1024; : 如果用C表示程式是這樣子嗎? : for (i=0;i<1024;i++) : { : mean=mean+A14results[index]; : return 0; : } : mean=mean/1024; : 不知道對不對?懇請賜教<(_ _)> 原po都大發慈悲的發問,我來誠心誠意回答好了 首先 (1) Matlab的 array 是從 1 開始 (2) Matlab有內建 mean function 唷 >.^ In Matlab: sum = 0; mean = 0; for i=1:1024 sum = sum + A14results[i]; end mean = sum/1024; 再來 In C++: //選擇正確的變數宣告 如果有小數請用double (or float) for (i=0;i<1024;i++) mean+=A14results[i]; mean/=1024; 原po寫到return應該是想用recursive吧 double mean(double A14results[],int i,int n) { if(i<n-1) return A14results[i]/n + mean(A14results,i+1,n); else return A14results[i]/n; } ----------------------------- 還是覺得C++寫起來比Matlxx 順手 Matlxx 沒有 ++ 跟 +=, *= 很不方便 別鞭大太力 我想在j版po文阿 ~~~~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.84.62

09/13 15:38, , 1F
recursive超好笑XDDDDDDDDDDD
09/13 15:38, 1F

09/13 17:20, , 2F
就是這樣(喵)
09/13 17:20, 2F

09/13 18:03, , 3F
似乎得到正解囉XD
09/13 18:03, 3F

09/13 23:16, , 4F
好殘忍...
09/13 23:16, 4F

09/14 02:33, , 5F
不建議初學者用recursive 有點自找麻煩
09/14 02:33, 5F

09/14 04:07, , 6F
推 recursive XDD
09/14 04:07, 6F

09/14 07:08, , 7F
To iterate is human, to recurse, divine. XDD
09/14 07:08, 7F

09/14 10:20, , 8F
感激不盡<(_ _)>
09/14 10:20, 8F

09/14 14:58, , 9F
我絕得原po會不會以為return就是end?
09/14 14:58, 9F
文章代碼(AID): #1CZTHATr (C_and_CPP)
文章代碼(AID): #1CZTHATr (C_and_CPP)