如何使用不等于'~='操作符在if语句?

1.046次观看次数(过去30天)
我的代码可以很好地使用'==',但不能使用'~='。如果用户输入A或B,我希望它不会显示“错误”
x =输入(“输入x”“年代”
如果(x ~ =“一个”) | | (x ~ =“B”
disp (“错误”);
结束

接受的答案

约翰D 'Errico
约翰D 'Errico 2017年2月21日
编辑:约翰D 'Errico 2017年2月21日
一个基本逻辑问题?
您希望只有当A不在集合{'A','B'}中时才返回错误。因此调用ismember可能是一个不错的选择。
无论如何,根据你所遵循的方法,如果x等于'A',那么子句的后半部分将为真,即使子句的第一部分为假。逻辑语句
假||真
是真的。
你要求的结果只有在子句的两个部分都为真时才为真。使用符合逻辑的and,而不是符合逻辑的or。
如果(x ~ =“一个”) && (x~=“B”

更多答案(2)

1月
1月 2017年2月21日
记住,对的否定
(x = =“一个”|| (x==“B”
是:
~ ((x = =“一个”|| (x ==“B”) = = >
~ (x = =“一个”) && ~(x ==“B”) = = >
(x ~ =“一个”) && (x ~=“B”
2的评论
沃尔特·罗伯森
沃尔特·罗伯森 2017年11月28日
如果((x ~ =“一个”) & (x ~=“p”) & (x ~=“T”))
流(错误:您输入了错误的选项。
结束
如果~all(ismember(x, {“一个”“p”“T”}))
流(错误:您输入了错误的选项。
结束

登录评论。


Torsten
Torsten 2017年2月21日
编辑:Torsten 2017年2月21日
如果用户输入A,则x~=B为真,则(x~='A')||(x~='B')为真,则显示“error”。
B也一样。
最好的祝愿
Torsten。

类别

了解更多源控制集成帮助中心而且文件交换

下载188bet金宝搏

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!

翻译的