![]() |
|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
![]() ![]() |
|
主題工具 | 顯示模式 |
|
![]() |
#1 (permalink) |
長老會員
![]() |
![]() 第三題,
用公式來導... A(0: m-1, 0:n-1) 已知 s1 = 0, s2 = 0 接著已知 A(3,2) 在1110, A(2,3) 在1115 且元素佔一個空間,意即 d = 1 帶入公式(我繼續用第一題的公式) A(i,j) = A(0,0) + ((i - s1) * n * d) + (( j - s2 ) * d) A(i,j) = A(0,0) + ((i - 0) * n * 1) + (( j - 0 ) * 1) A(i,j) = A(0,0) + (i * n) + j (以上是簡化後的結果) A(3,2) = A(0,0) + (3 * n) + 2 = 1110 → A(0,0) + (3 * n) + 2 = 1110 → A(0,0) + (3 * n) = 1108 → A(0,0) = 1108 - (3 * n) A(2,3) = A(0,0) + (3 * n) + 2 = 1115 → A(0,0) + (2 * n) + 3 = 1115 → A(0,0) + (2 * n) = 1112 → A(0,0) = 1112 - (2 * n) 再將2者 拿來比較 1108 - (3 * n) = 1112 - (2 * n) 1108 - n = 1112 可以得到 n = -4 ...(行數是-4.........) ...到這裡出了問題了 因此,這個陣列【並不是 以列為主】 ======================== 算我倒楣!!(對你來說是幸運,可以看到用錯公式時的情形) ... 所以,再重算一次,改用另一個公式,以行為主 A(i,j) = A(0,0) + ((j - s2) * m * d) + (( i - s1 ) * d) A(i,j) = A(0,0) + ((j - 0) * m * 1) + (( i - 0 ) * 1) A(i,j) = A(0,0) + (j * m) + i (以上是簡化後的結果) A(3,2) = A(0,0) + (2 * m) + 3 = 1110 → A(0,0) + (2 * m) + 3 = 1110 → A(0,0) + (2 * m) = 1107 → A(0,0) = 1107 - (2 * m) A(2,3) = A(0,0) + (3 * m) + 2 = 1115 → A(0,0) + (3 * m) + 2 = 1115 → A(0,0) + (3 * m) = 1113 → A(0,0) = 1113 - (3 * m) 1107 - (2 * m) = 1113 - (3 * m) 1107 = 1113 - m m = 6 因此...陣列大小A(0 : m-1, 0 : n-1) 就是 A(0:5, 0: n-1) 由於題目只問到 A(1:4),所以 n 大於 4... n=5,6,7... n=無限大 也可以 (在這裡... n 用不到了...) 接下來,算一下A(0,0)的位置... A(3,2) = A(0,0) + (2 * m) + 3 = 1110 A(3,2) = A(0,0) + (2 * 6) + 3 = 1110 A(3,2) = A(0,0) + 15 = 1110 A(0,0) = 1110 - 15 = 1095 A(2,3) = A(0,0) + (3 * m) + 2 = 1115 A(2,3) = A(0,0) + (3 * 6) + 2 = 1115 A(2,3) = A(0,0) + 20 = 1115 A(0,0) = 1115 - 20 = 1095 經由上面2個座標比對,確定A(0,0)是1095 最後,再計算 A(1,4)的值 A(1,4) = A(0,0) + (j * m) + i A(1,4) = 1095 + (4 * 6) + 1 A(1,4) = 1095 + 25 A(1,4) = 1120 !!!! (明明應該是你自己要看的公式,你自己都掃瞄了,也貼上來了 結果變成是我得幫你寫出來...........唉..........) 上面這一題的陷阱就是 【以行為主】 v.s 【以列為主】 而要弄的懂,最好是把第二題,也算一算.... 也就是說:最好是從第一題開始算,算完之後再算第二題,再算第三題... 當你全部的習題都會算的時候,你這一章才能算是 真的了解了.... 而你如果中間的題目就這麼跳過去,不看了, 那你後面的章節只會更痛苦..... (很多資工科系,資管科系的學生 之所以會裁在程式設計的課程, 就是因為一開始沒弄懂,後面更痛苦,最後放棄....) |
__________________![]() |
|
![]() |
送花文章: 4036,
![]() |
![]() ![]() |
|
|
![]() |
||||
主題 | 主題作者 | 討論區 | 回覆 | 最後發表 |
心測 - 衣服顏色看你走什麼運 | crd1871 | 星座命理討論區 | 5 | 2007-08-20 02:03 AM |
最近想買notebook, 有經驗的人來幫忙討論一下唄... | vanderwall | 硬體疑難使用問題討論區 | 3 | 2004-10-07 10:33 PM |