→ rex0707: 是不是因為你把這兩段code放在一起 所以a向量的大小跟上 02/06 17:51
→ rex0707: 面的一樣 而且後面幾個元素的值沒變 02/06 17:52
→ book5601: 先回覆陣列內有零的問題,我記得matlab不用在變數後面括 02/06 20:04
→ book5601: 弧也會自己儲存成陣列。所以你只要把a(n)的(n)整個刪除 02/06 20:04
→ book5601: ,再run一次應該就會有。 02/06 20:04
→ book5601: 第二個方法是直接把數值串聯,a=[a 2^n]; 這是matlab 02/06 20:07
→ book5601: 才有的寫法 02/06 20:07
推 profyang: 請記得先用zeors之類的給定a的size...程式前面最好加個 02/06 21:20
→ profyang: clear; clc;之類的...至少我是習慣這樣做的 02/06 21:21
→ profyang: 上面打錯 zeros 02/06 21:21
推 sppmg: 插入0是因為陣列初始值為0,你第一個迴圈n=3時,陣列(2)未 02/06 23:43
→ sppmg: 指定即為0。第二個迴圈問題則是因為剛剛的a沒清除,所以(5) 02/06 23:43
→ sppmg: 之後都是舊的值。 02/06 23:43
→ sppmg: 還有就是MATLAB在指定元素超出範圍時會即時配置一個新的陣 02/06 23:48
→ sppmg: 列,然後再複製內容過去。所以a(100)=0是一個zeros之外的預 02/06 23:48
→ sppmg: 配置記憶體的方法。(據說比較快) 02/06 23:48
→ sppmg: a=[a, 2*n+1] 很方便,但效能較差,因為每次迴圈都要花費配 02/06 23:51
→ sppmg: 置記憶體+複製內容的時間。 02/06 23:51
推 sherees: n = 1:10; a = 2 ^ n 02/08 16:02
→ sherees: n = 1:2:10才對 02/08 16:03
推 bcpsowen: n=1:2:10 02/09 17:53
→ bcpsowen: a=2.^n 02/09 17:53
→ bcpsowen: 矩陣運算比迴圈有效率 點乘蠻好用的 02/09 17:53
推 tn00364361: .^正解,速度快很多 02/12 00:01