How do I define and use a standard range written by variable

1 回表示 (過去 30 日間)
edo nissim
edo nissim 2020 年 2 月 4 日
コメント済み: Walter Roberson 2020 年 2 月 4 日
Hi every one!
I want to define the standard range "690N to 1200N" (N has to be a positive and integer number).
hen when i get a number I want to check if the number that I got is in my range (690-1200 or 1380-2400 or 2070-3600 or...).
Thank you very much!
Robert

回答 (2 件)

Ruger28
Ruger28 2020 年 2 月 4 日
N = 1;
RangedValues = [690*N:1200*9]; % set your range, assuming your values are always 690 and 1200 * N
Num2Check = 1459; % number to see if it is within range
if Num2Check >= RangedValues(1) && Num2Check <= RangedValues(end) % check greater than first value and less than last
disp('Number is within range');
% rest of code below since nnumber is within range
end
  2 件のコメント
edo nissim
edo nissim 2020 年 2 月 4 日
Thank you but I know how to check if the N is known (like you did with N=1).
I would like to know when I dont know what is N and it is can be any number/ I want the the software to with the options of N automatically. thanks.
Walter Roberson
Walter Roberson 2020 年 2 月 4 日
if ~exist('N', 'var') || isempty(N)
you do not know what N is
else
N exists and is non-empty but you need to check that it is valid
end
See also https://www.mathworks.com/help/matlab/ref/double.discretize.html

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


Fangjun Jiang
Fangjun Jiang 2020 年 2 月 4 日
編集済み: Fangjun Jiang 2020 年 2 月 4 日
N=10; % provide a reasonable number based on the range of input data
n=1:N;
LowBound=690*n;
HighBound=1200*n;
InputData=[100 1000 1300 1400]' ;
OutputFlag=any(and(InputData>LowBound, InputData<HighBound),2)

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by