Only gu values tu ?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hello Matlab community,
i created a script and everything works but i want to add that the script accepts also only integer values for m. How can i do this?
i = 0;
m = input('please number: ','s');
while isnan (str2double(m)) == true || str2double(m)<0
m = input('please again: ','s');
if isnan (str2double(m)) == true || str2double(m)<0
i = i+1;
if i == 4
return
end
else
break
end
end
댓글 수: 2
Stephen23
2021년 2월 19일
편집: Stephen23
2021년 2월 19일
Original question by Steveb Thies retrieved from Google Cache:
"Only integer values ?"
Hello Matlab community,
i created a script and everything works but i want to add that the script accepts also only integer values for m. How can i do this?
i = 0;
m = input('please number: ','s');
while isnan (str2double(m)) == true || str2double(m)<0
m = input('please again: ','s');
if isnan (str2double(m)) == true || str2double(m)<0
i = i+1;
if i == 4
return
end
else
break
end
end
답변 (2개)
Les Beckham
2021년 2월 19일
To test for integer values of double numbers (doubles are the default numeric type in Matlab), I would suggest using mod(m,1).
So, in your case, replace "isnan (str2double(m)) == true || str2double(m)<0" with "mod(m,1) ~= 0" to detect a number that is not an integer.
Of course your code does nothing whether the test passes or fails so I'm not sure what the point is. I assume you have left some things out?
댓글 수: 0
Walter Roberson
2021년 2월 19일
positive integers have the property that all of their characters are one of '0','1','2','3','4','5','6','7','8','9', or '+'... unless you want to accept exponential notation as well, in which case the characters might also be 'd', 'D', 'e', 'E', '.', or '-' .
댓글 수: 1
Les Beckham
2021년 2월 19일
Your answer made me notice that Steven was using the 's' option in his input call. I had missed that before.
Perhaps remove the 's' option and use mod as I suggested? Still, the example code does nothing with the result, so it is difficult to tell what the desired behavior is.
참고 항목
카테고리
Help Center 및 File Exchange에서 Environment and Settings에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!