mp_0010: Precedence of Operators in Arithmetic Expressions
Since R2024b
Guideline Publication
Control Algorithm Modeling Guidelines - Using MATLAB®, Simulink®, and Stateflow®
Sub ID Recommendations
- NA-MAAB — a 
- JMAAB — a 
MATLAB Versions
All
Rule
Sub ID a
When an expression contains operators with different precedence levels, parentheses shall be used to clarify the order of operations.
Example — Correct
            
foo = (bar * baz) + qux; foo = bar + (baz * qux); (bar && baz) || (qux && quux);
When the operators have the same precedence, parentheses are unnecessary.
foo = bar + baz - qux;
Example — Incorrect
            
foo = bar * baz + qux; foo = bar + baz * qux; bar && baz || qux && quux;
Rationale
Sub ID a:
- Readability could lead to unintended functionality. 
Verification
Model Advisor check: Check for operator precedence (Simulink Check)
Last Changed
R2024b
See Also
Version History
Introduced in R2024b