Construct if cycle for two variables
1 次查看(过去 30 天)
显示 更早的评论
Hey guys, I just wanted to check with you if this code is right or is there anyway I could improove it?
This is a function: I want that for the two ifs, status=1 and if the two ifs conditions doesnt apply, then ,status=0.
if angle_transmitter + teta_flutuations_transm <= angle_receiver + teta_flutuations_reflec && angle_transmitter - teta_flutuations_transm >= angle_receiver - teta_flutuations_reflec && Vectors_product_2 ~= 1
status=1;
if angle_transmitter + teta_flutuations_transm >= angle_receiver + teta_flutuations_reflec && angle_transmitter - teta_flutuations_transm <= angle_receiver + teta_flutuations_reflec
status=1;
else
status=0;
end
0 个评论
采纳的回答
Walter Roberson
2022-6-16
status = (angle_transmitter + teta_flutuations_transm <= angle_receiver + teta_flutuations_reflec && angle_transmitter - teta_flutuations_transm >= angle_receiver - teta_flutuations_reflec && Vectors_product_2 ~= 1) ||
(angle_transmitter + teta_flutuations_transm >= angle_receiver + teta_flutuations_reflec && angle_transmitter - teta_flutuations_transm <= angle_receiver + teta_flutuations_reflec)
2 个评论
Walter Roberson
2022-6-20
编辑:Walter Roberson
2022-6-20
This code will return 0 and 1 directly.
If you change all of the && to & and change the | | to | then the code would be vectorized, able to handle arrays of angle_transmitter at the same time
更多回答(1 个)
Karan Kannoujiya
2022-6-16
Hi Miguel,
For checking the above the condition
you will have to use two ifs and this the right way of doing it.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!