please help me with this break
1 view (last 30 days)
Show older comments
arsalan mehrabi
on 3 Dec 2020
Commented: Star Strider
on 6 Dec 2020
hi,i wrote this code:
syms f te t1 p2 t2 t3 p3 p4 t4 t5 f1 t6
for f= 0.035:0.001:0.06
for te= 1800:1:2500
t1=(1-f)*300+f*(1-((1-50)/100)*((1.3-1)/1.3))*te
p2=50*(10)^1.3
t2=t1*10^0.3
t3=t2+2500*(1-f)/0.775
p3=p2*(t3/t2)
p4=p3*(1/10)^1.3
t4=t3*(1/10)^0.3
t5=t4*((p4/100)^(0.3/1.3))
f1=((100/p4)^(1/1.3))/10
t6=(1-f1)*300+f1*(1-((1-50)/100)*((1.3-1)/1.3))*t5
if ((abs((t6-t1)/t1)*100)<3) && ((abs((f-f1)/f)*100)<3) && ((abs((te-t5)/te)*100)<3)
table(t1,t6,f,f1,te,t5)
break
end
end
end
i want it to stop at certain point so i used Break but it continued and didin't break.
why?
1 Comment
Image Analyst
on 3 Dec 2020
Please highlight your code in MATLAB and type control-a (to select all) then control-i (to properly indent it). Then paste it back here and highlight it and click the "Code" icon on the tool ribbon. this will ensure your code doesn't look like a total mess to us and will make it easy for us to copy into the clipboard. Also be sure to see Start Strider's Answer below.
Accepted Answer
Star Strider
on 3 Dec 2020
You have two nested loops. The break command will only break out of the inner loop, the one it is called in.
A simple example —
for k1 = 1:6
for k2 = 1:4
k_2 = k2;
fprintf('\t\tk_2 = %d\n', k_2)
if k2 > 2
break
end
end
fprintf('k1 = %d\tk2 = %d\n', k1, k_2)
end
.
4 Comments
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!