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

864(30天)
我的代码没问题' = = '但不是~ =。我希望它不显示“错误”,如果用户输入A或B
x =输入(“输入x”,“年代”)
如果(x ~ =“一个”)| | (x ~ =“B”)
disp (“错误”);
结束

接受的答案

约翰D 'Errico
约翰D 'Errico 2017年2月21日
编辑:约翰D 'Errico 2017年2月21日
基本逻辑的问题吗?
你想要一个错误返回只有一组不在{“A”、“B”}。所以调用ismember可能是一个不错的选择。
无论如何,考虑到方法之后,如果x = A,第二个一半的条款将是真实的,即使是假的第一部分条款。和逻辑语句
假| |真
是真的。
你问的结果是只有当两个部分的条款是正确的。使用一个逻辑,逻辑或不是。
如果(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”))
流(错误:您输入不正确的选择。)
结束
如果~所有(ismember (x, {“一个”,“p”,“T”}))
流(错误:您输入不正确的选择。)
结束

登录置评。


Torsten
Torsten 2017年2月21日
编辑:Torsten 2017年2月21日
如果用户输入一个,那么x ~ = B是真的,所以(x ~ = A) | | (x ~ = B)是正确的,从而显示“错误”。
对B。
最好的祝愿
Torsten。

类别

找到更多的在源代码控制集成帮助中心文件交换

s manbetx 845

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的