# Resolving value of variable to restricted range

2 ビュー (過去 30 日間)
N/A 2022 年 6 月 23 日
コメント済み: N/A 2022 年 6 月 24 日
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.

サインインしてコメントする。

### 採用された回答

Image Analyst 2022 年 6 月 23 日
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 件のコメント表示非表示 なし
N/A 2022 年 6 月 24 日
Awesome. Thanks man. I appreciate unknowingly familarizing me with the "while" loop
Kind Regards

サインインしてコメントする。

### Community Treasure Hunt

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

Start Hunting!