matlab或条件语句


matlab if语句

function dh=jiangyu (t,h)

%降雨量的表达式

if t<=400

a=6*12*(0.122*10^(3)abs(0.00061*t*10^(3)0.122*10^(3)))*cos(pi/9);

else

a=0;

end

%液面高度微分方程中的其他部分:

b=0.7*pi*(0.05)^2*sqrt(2*9.81*h);

c=2*12*sqrt(0.15*hh^2);

%使结果符合客观事实,增加下面的判定

z=isreal((ab)/c);

%如果液面高度正常为大于零的数,便按所设微分方程求解

if z==1

dh=(ab)/c;

%如果液面高度小于零,且此时不再下雨,则液面不再变化

elseif (z==0 & a==0)

dh=0;

%如果液面高度小于零,但仍然下雨,则液面将会上升,速度为下式

else

h=0.0001;

dh=(ab)/c;

end

end

你的判断等于要改成 ==

没有and这个用法的,用&

表并列直接回车就行了

你的c可能是虚数,注意~

matlab if else语句怎么用

1、先打开软件,点击左上角进行新建脚本,即创建一个m文件,打开编译界面后,先将此m文件进行保存,注意命名规则,只能用英文加下划线。

2、对于只用两种情况的问题,则只用到else即可,第一个if说明情况一,else说明不满足情况一的所有其他情况。注意结尾要加end,不然如图命令提示所示,会报错。

3、对于多个情况,可设置多个判断,对于有新判断条件的情况用elseif添加,下图所示,为3种情况,根据a的值,运行后满足第二种情况。

4、对于其他情况,如果判断出符合这种情况可以不写,如符合else条件,但是不用执行程序,则可连else都不写,也可写上,只是后面不写执行语句,程序也不会报错,对于elseif、if也是,不需执行程序,也可写上条件判断语句,但是不写下一步语句,也可以。

5、接着用多级if语句创建了下图多级判断程序,可以实现根据输入的字母,输出对应参数b的值,而且不会区分字母大小写,因为同一判定条件加入了字母大小写形式。但是如果条件再多,程序将会无限延长,可以用其他思路,进行解决。

6、这里采用数组预先储存判断条件,及参数b的值,因为条件相同,用for循环加上一条条件判断,即可实现多级条件功能。但是要注意,条件形式要相同,否则不能写成统一形式。这样如何使用,及一种可行的替换思路,介绍完成。

【条件语句表达的算法结构是什么结构】

条件语句: 1、条件语句的一般格式有两种:(1)IF—THEN—ELSE语句;(2)IF—THEN语句.2、IF—THEN—ELSE语句IF—THEN—ELSE语句的一般格式为图1,对应的程序框图为图2.分析:在IF—THEN—ELSE语句中,“条件”表示判断的条件,“语句1”表示满足条件时执行的操作内容;“语句2”表示不满足条件时执行的操作内容;END IF表示条件语句的结束.计算机在执行时,首先对IF后的条件进行判断,如果条件符合,则执行THEN后面的语句1;若条件不符合,则执行ELSE后面的语句2.3、IF—THEN语句满足条件?语句是否(图4)IF—THEN语句的一般格式为图3,对应的程序框图为图4.注意:“条件”表示判断的条件;“语句”表示满足条件时执行的操作内容,条件不满足时,结束程序;END IF表示条件语句的结束.计算机在执行时首先对IF后的条件进行判断,如果条件符合就执行THEN后边的语句,若条件不符合则直接结束该条件语句,转而执行其它语句.例5、编写程序,输入一元二次方程ax2+bx+c=0的系数,输出它的实数根.分析:先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来.(程序框图先由学生讨论,再统一,可以参考课本)算法分析:在求解方程之前,需要首先判断判别式的符号,再根据判别式的符号判断方程根的情况:△>0时,方程有两个不相等的实数根;△=0时,方程有两个相等的实数根;△。

在matlab 中if 语句

这个问题有点怪,

第一个问题,如果你是为了显示的目的,建议你使用字符串的形式,因为matlab自动会把0000省略成0的。

a=’0000′;

若要用里面的数值,则可用一个函数转过来str2num(a)=0;

第二个问题,看你的表示应该是判断吧,可以用下面的语句实现你要的功能:

a=[(a>=10)]

第三个问题,如何把.M文件导成.dat文件,你说的是导出结果数据吗?我还没有听说过直接把M文件变成dat文件。如果是导出数据的话,可以使用fprintf函数。fprintf 使用例子:

x = 0:.1:1; y = [x; exp(x)];

fid = fopen(‘*’,’w’);

fprintf(fid,’%6.2f %12.8fn’,y);

fclose(fid);