看板 C_and_CPP 關於我們 聯絡資訊
: void gaussh(double matrix[3][4]) : { : for (int i=0; i<3; ++i) : { : if (matrix[i][i]==0) : for (int j=i+1;j<4;j++) : { : if(matrix[j][i]!=0) : for(int m=i;m<3;m++) : swap(matrix[i][m],matrix[j][m]); : } : double t; ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ : for (int k=i; k<3; ++k) : { : t=matrix[k+1][k]/matrix[k][k] ; : for (int j=i+1; j<4; ++j) : { : matrix[j][k] -= matrix[i][k] * t; : } : } ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ 有問題的地方在這 照你這樣寫跑出的結果會變這樣 http://i.imgur.com/sNy6qhY.png 最後求得的結果當然是錯的 你需要檢查一下該怎麼給i j k的值 : } : 補充說明(Supplement): : 我照著書上及網路的程式碼打 還是錯 : 我從晚上看到天亮(真的...)還是不知道哪裡錯 : 初學程式語言,還請各位多包涵 : 請大大幫我解惑! -- 廠下廣卞廿士十一卉半與本二上旦上二本與半卉一十士廿卞廣下廠下廣卞廿士十一卉半 與本二上旦上二本與半卉一十士廿卞廣下廠下廣卞廿士十一卉半與本二上旦上二本與半 卉一十士廿卞廣下廠下廣卞廿士十一卉半與本二上旦上二本與半卉一十士廿卞廣下廠下 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.21.228.43 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1414553541.A.629.html
won54chan: 已解決 謝榭 10/29 13:44