[問題] 迴圈判斷的問題..已回收

看板MATLAB作者 (Let's go cubbies)時間14年前 (2009/11/24 10:27), 編輯推噓2(202)
留言4則, 3人參與, 最新討論串1/1
想請問一下版上的前輩.. 我寫出一個i=1:100的loop 然後我想在Retheta 大於或等於 RHS1的時候停下.. 並顯示出當時的 x 的值 Retheta 和 RHS1 均為 x 的function 想請教這樣寫的問題是出在哪邊...?? 或是有更好的寫法嗎..?? 感謝回答的前輩.. x=linspace(0,100,100); U=U0.*(1.-(x./L)); for n=1:100; x1=linspace(0,n,100); y=U0.^5.*(1-(5.*(x1./L))+((10.*x1.^2)/L^2)-((10.*x1.^3)./L^3)+((5.*x1.^4)./L^4)-((x1.^5)./L^5)); area=trapz(x1,y); Z(n)=area; end format short e A1=((0.45*Nu)./(U.^6)).*Z(n); Theta=sqrt(A1); Up=-(U0/L); Lambda=((Theta.^2)./Nu).*Up; for i=1:100; Retheta(i)=(U(i).*Theta(i))./Nu; Rex(i)=(U(i).*x(i))./Nu; RHS1(i)=1.74.*(1+(22400./Rex(i))).*(Rex(i).^0.46); while Retheta>=RHS1 disp('Rex') end end -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 130.191.146.238 ※ 編輯: Jerryamd 來自: 130.191.146.238 (11/24 10:29)

11/24 11:04, , 1F
while改if, disp下面再加break
11/24 11:04, 1F

11/24 14:32, , 2F
回樓上的大大..我改過了耶..還是不能執行..@@a
11/24 14:32, 2F

11/24 18:14, , 3F
照1樓的講法應該是可以的 結果跑不出來也可能是Reθ都<RHS1
11/24 18:14, 3F

11/24 18:15, , 4F
另外if或者while 他們的判斷式要寫在同一行...
11/24 18:15, 4F
文章代碼(AID): #1B2qHuTt (MATLAB)