好吧,我真的認爲我在想這個,但是我已經編程了48個小時,我的腦海消失了。背景信息:使用Visual Studio 2010,使用C++創建控制檯應用程序。我遇到了一些邏輯問題,並陷入以下內容:如何通過包含3個值的2D數組運行並檢查值?
我有一個2維8 x 8陣列,矩陣[8] [8]。該數組包含0,1和2。現在隨着程序執行,數組用1代替1或2。所以當它運行時,我想要檢查一下數組是否已經刪除了全部1或2。因此,如果只有0和1,我想表達一個類似「你的數組不再包含2」的消息,反之亦然,如果只有0和2的話。
下面是一些代碼我在想使用的:
for(row = 0; row < 8; row++)
{
for (col = 0; col < 8; col++)
{
if(matrix[row][col] != 1){
cout<<"message"<<endl; }
else if(matrix[row][col] != 2){
cout<<"message"<<endl; }
}
}
現在我的這個問題是,如果該數組包含[0,1,2,0],將運行通過,並檢查所述第一元件,它不會包含1或2個。關於我能做些什麼的一些想法?
提示一束:總結你的矩陣中的一類,使用迭代這個類,矩陣[COL *行]更有效。如果你這樣做解決你的問題是一個簡單的'fold'或'accumulate'(用C++術語)。 這也讓你的思想免於「消失」。 – pmr 2011-04-23 22:15:18
感謝您的意見 – tehman 2011-04-23 22:34:56