"Or Statement in And statement" using if operator

343 次查看(过去 30 天)
Hello everyone,
I have a very simple question....and I have been working on it for some time but cannot figure it out. I try to write the statement that condition 1 : Test(i-1) or Test(i-2) =0, condition 2: Test(i+1) or Test(i+2) =0, when condition 1 and condition 2 are true then the statement is true. I tried to write the code but it did not work at all.
for i = 3:N-2
if Test(i-1)==0||Test(i-2)==0 && Test(i+1)==0||Test(i+2)==0
end
end
Thanks for the help in advance :)

采纳的回答

Stephen23
Stephen23 2016-5-30
编辑:Stephen23 2016-5-30
You need to use brackets to group the logical statements together:
if (A || B) && (C || D)
Otherwise the operator precedence rules gives the order in which they are evaluated.
Note that you should not use i (or j) for loop variable names, as these are names of the inbuilt imaginary unit.
  5 个评论
Stephen23
Stephen23 2016-5-31
编辑:Stephen23 2016-5-31
In my last comment I explained why that test probably failed (because the value isn't really zero). The solution to this is also explained in my last comment.
If you upload a .mat file with those value then I can check the values, and show you how you can compare them in a more robust manner.
Doris
Doris 2016-6-2
Thank you so much. I have solved this problem. The float number was the biggest problem and I also wrote the if statement in wrong way.

请先登录,再进行评论。

更多回答(1 个)

arief hidayat
arief hidayat 2017-11-24
编辑:per isakson 2017-11-24
hi i got same issue when i running script as below :
if ((rate ~= rate_tx || (Nbpsc ~= Nbpsc_tx) || (psdu_byte ~= psdu_byte_tx)))
Percounter = 1;
noviterbi_Y = [];
PSDU = [];
return ;
else
Percounter = 0;
help me please

类别

Help CenterFile Exchange 中查找有关 Argument Definitions 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by