Matlab运算子 [英] Matlab Operators

查看:70
本文介绍了Matlab运算子的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为明天的累积考试而学习,在上一次考试中我错了以下问题.我希望有人可以向我解释这个问题? (〜m)是什么意思?

I am studying for cumulative exam I have tomorrow and I got the following question wrong on a previous exam. I was hoping someone could explain this question to me? What does (~m) mean?

问题说:
执行以下脚本后,m的值是多少?

The question says:
After executing the following script, what is the value of m?

a=1; b=2; m=0;  
if (~m)  
    m = m+1;  
    if (a-b > 0)  
        m = m+1;  
    else  
        m = m -1;  
    end  
elseif (m > 1)  
    m = m + 2;  
else  
    m = m - 2;  
end

正确答案是0,但是为什么呢?我猜想m = -2

The correct answer is 0, but why? I would have guessed that m = -2

推荐答案

~表示NOT.但是,除非数值等于0,否则所有数值都被视为TRUE.

The ~ means NOT. However, numeric values are all considered TRUE unless they are identically equal to 0.

因此,此逻辑实际执行的命令是:

So, the commands which are actually executed by this logic are:

m = m+1;  %Following if (~m)
m = m-1;  $Following else

此外,代码中还有一个嵌套的if语句.如果您使用了多个级别的缩进,将更易于阅读.

Also, there is a nested if statement in the code. It will be easier to read if you used multiple level indentations.

这篇关于Matlab运算子的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆