Resolving value of variable to restricted range

Goal: Resolve the value of a variable X to be between [-pi, pi)
I have a variable (named "X") that I want to resolve to be within the listed range, [-pi, pi).
If X < -pi
add multiples of 2*pi to X until the result is between [-pi, pi)
If X> pi
subtract multiples of 2*pi until the result is between [-pi, pi)
I presume a if-else statement (with a possible for loop) is necessary to code this. However, I am not familiar with it and would appreciate any guidance.

 Accepted Answer

I don't think you need an if statement or a for loop. Here is one way to do it:
X = 30 % Sample starting number.
while X < -pi
% Add multiples of 2*pi to X until the result is between [-pi, pi)
X = X + 2 * pi
end
while X > pi
% Subtract multiples of 2*pi until the result is between [-pi, pi)
X = X - 2 * pi
end
The code works and you don't need an if to check the value of X beforehand.

1 Comment

Awesome. Thanks man. I appreciate unknowingly familarizing me with the "while" loop
Kind Regards

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

N/A
on 23 Jun 2022

Commented:

N/A
on 24 Jun 2022

Community Treasure Hunt

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

Start Hunting!