Rewrite the script without using continue and break statement.
12 次查看(过去 30 天)
显示 更早的评论
I have written a code as below:
a=5:-1:-2;
i=1;
while(1)
if(a(i)<0)
break;
end
b=a(i)*2;
i=i+1;
if(b>=4)
continue;
end
disp('b<4')
end
disp('end of computation')
The script includes continue and break statements. Note that break will exit the innermost enclosing of while or for loop; while continue will jump to the end of the innermost enclosing while or for loop.
I wish to rewrite my code by removing break and continue so that it looks nicer. Any suggestions? Thank you.
0 个评论
采纳的回答
Cris LaPierre
2022-2-14
编辑:Cris LaPierre
2022-2-14
You can remove the if statement containing the break by just using the opposte condition as the conditional statement controlling the while loop execution.
while a(i)>=0
You could reverse the contitional on your 2nd if statement, and replace continue with your disp command.
1 个评论
Cris LaPierre
2022-2-14
a=5:-1:-2;
i=1;
while a(i)>=0
b=a(i)*2;
i=i+1;
if(b<4)
disp('b<4')
end
end
disp('end of computation')
更多回答(1 个)
David Hill
2022-2-14
Not sure what you are trying to do, but the final b is going to be zero.
a=5:-1:-2;
b=0;
disp('b<41');
disp('b<41');
disp('end of computation');
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Interactive Control and Callbacks 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!