Re: [問題]如何改成用for迴圈寫程式

看板MATLAB作者 (憨仔)時間10年前 (2013/12/12 14:21), 編輯推噓0(003)
留言3則, 1人參與, 最新討論串3/8 (看更多)
你好: 我剛試用你寫的, 以下是matlab回我的訊息 ??? Attempted to access tg(122,1); index out of bounds because size(tg)=[121,3]. 有地方想問一下, k=1:1:n 是什麼意思!? 謝謝。 ---------------------------------------------------------- 下午花一些時間在研究這個for部份 修改兩個地方,就可以完整進行!!!! tg=xlsread('PMMA.xlsx'); n=length(tg); for k=1:1:n-1 a=tg(k,1); b=tg(k+1,1); c(k,1)=b-a; end ※ 引述《aada (aada)》之銘言: : 你試試看這個, : 我手邊沒matlab, : tg=xlsread('PMMA.xlsx'); : c1=tg; : n=length(tg); : for k=1:1:n : a=tg(k,1); : b=tg(k+1,1); : c1(k,1)=b-a; : end : 還有更簡短的寫法, 不用for迴圈~ : ※ 引述《eagleyang (憨仔)》之銘言: : : 小弟剛接觸matlab : : 對matlab還有點不熟悉 : : 以下是我要讀xls檔 : : 要把A1~A121的值做相減 : : A2-A1 A3-A2 : : 我有寫以下的,但是老師說要改成for迴圈 : : 想請問一下要如何修改成 : : tg=xlsread('PMMA.xlsx'); : : a=tg(1,1); : : b=tg(2,1); : : c1=b-a : : clear : : tg=xlsread('PMMA.xlsx'); : : a=tg(2,1); : : b=tg(3,1); : : c2=b-a : : clear : : . : : . : : . : : tg=xlsread('PMMA.xlsx'); : : a=tg(120,1); : : b=tg(121,1); : : c120=b-a : : clear : : 麻煩了,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.18.215

12/12 14:22, , 1F
n為你的陣列長度
12/12 14:22, 1F

12/12 14:23, , 2F
你的資料是幾維的
12/12 14:23, 2F

12/12 14:24, , 3F
k=1:1:n--> k=1,2,3...n
12/12 14:24, 3F
※ 編輯: eagleyang 來自: 140.130.18.215 (12/12 18:09)
文章代碼(AID): #1IgLNbeK (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1IgLNbeK (MATLAB)