[問題] 請問我的迴圈是哪裡錯了呢?已回收
我想要做一個函數,圖形是一個besselj(1,x),然後輸入第幾個零點,他就會給我值,
所以我這樣寫:
y=@(x)besselj(0,x);
q=2;j=0;k=0;n=1;num=0;
while (num<10)
while (j==k)
q=q+1;
k=fzero(y,q);
z=k;
if(z~=j)
p(1,n)=z
n=n+1;
end
end
j=z;
num=num+1;
end
我的理想狀態是希望之後能夠藉由p(1),p(2),p(3)...能夠去找我想要的第幾個零點的值.
結果跑出來的數值變成了(僅列出最後一行):
p =
2.4048 5.5201 8.6537 11.7915 11.7915 11.7915 14.9309
14.9309 14.9309 18.0711
可是為什麼從11.7915就開始會重複阿...= =
(我把分號打開後看他的跑法,我發現問題出現在if...請問是哪裡做錯了呢?)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.26.123
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章