Re: [問題] for迴圈 處理矩陣問題

看板C_and_CPP作者 (累人啊....)時間14年前 (2010/04/16 02:04), 編輯推噓4(401)
留言5則, 4人參與, 最新討論串2/5 (看更多)
※ 引述《powerjeffson (功夫熊)》之銘言: : 遇到的問題: (題意請描述清楚) : 假設我有一個A矩陣,大小為9*9 : / \ / \ : | 1 2 3 4 5 6 7 8 9 | | 5 5 5 8 8 8 2 2 2 | : | 2 3 4 5 6 7 8 9 1 | | 5 5 5 8 8 8 2 2 2 | : | 3 4 5 6 7 8 9 1 2 | | 5 5 5 8 8 8 2 2 2 | : | 4 5 6 7 8 9 1 2 3 |    | 8 8 8 2 2 2 5 5 5 | : A = | 5 6 7 8 9 1 2 3 4 | B = | 8 8 8 2 2 2 5 5 5 | : | 6 7 8 9 1 2 3 4 5 | | 8 8 8 2 2 2 5 5 5 | : | 7 8 9 1 2 3 4 5 6 | | 2 2 2 5 5 5 8 8 8 | : | 8 9 1 2 3 4 5 6 7 | | 2 2 2 5 5 5 8 8 8 | : | 9 1 2 3 4 5 6 7 8 | | 2 2 2 5 5 5 8 8 8 | : \ / \ / 將要取的元素存放在一個空間abc(1*9 array) for (int i=0;i<9;++i){ int index=0; if (i%3==0) index+=i; for (int j=0;j<9;++j){ if (j%3==0) ++index; B[i][j]=abc[index]; } } 我是直接寫的啦,沒有真的程式去跑過,所以錯了就算了...XD 如果是我的話,應該就是像這樣,迴圈加上判斷來寫吧... 我覺得這是最直覺的方式 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.143.152.5 ※ 編輯: tyc5116 來自: 220.143.152.5 (04/16 02:05)

04/16 06:56, , 1F
推,我想到的是i--的做法XD
04/16 06:56, 1F

04/16 06:58, , 2F
不過好像沒比較快
04/16 06:58, 2F

04/16 09:53, , 3F
B[i][j] = A[i/3*3+2][j/3*3+2];
04/16 09:53, 3F

04/16 12:00, , 4F
樓上方法好酷!!
04/16 12:00, 4F

04/17 12:46, , 5F
通常都用ledia的方法吧?
04/17 12:46, 5F
文章代碼(AID): #1BnrKauo (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1BnrKauo (C_and_CPP)