matlab while语句


matlab while语句

文章插图
a是一个数组,abs(a-s)这个得到的是1*141的数组,而abs(a-s)>=6就表示成了逻辑运算,数组中大于6的为1,小于6的为0,所以这个程序永远不会执行到break的,而后面你用的disp(a)显示的是数组a,这就是你所说的“结果是从1到15的茫茫一大片”,从你的思路来看是要找到a,这个a的值应该是11而不是6.1其实你可以用下面语句实现:clc;clear;s=5;a=1:0.1:15;[m n]=size(a);for j=1:nif abs(a(j)-s)>=6 t=a(j); break;endenddisp(t)
【matlab while语句】

    推荐阅读