필터 지우기
필터 지우기

Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

how can i determine why my code is accepting a non integer when it's not suppose to

조회 수: 1 (최근 30일)
I'm solving problem that is supposed to only accept an integer as input but its accepting a non integer. I'm attaching the problem and the code i wrote . please help me check what could be wrong thanks

답변 (2개)

Roger Stafford
Roger Stafford 2016년 6월 11일
편집: Roger Stafford 2016년 6월 11일
Your instructions specified that if the input is invalid, you were to return an empty string. This you did not do. Instead your code proceeds just as if the input is valid. When you do an ‘if’ operation terminated by ‘end’, the code proceeds from the point after the ‘end’ unless a ‘break’ or 'continue' has been called. There is no ‘break’ or 'continue' in your code.
Also the test for integer is wrong, in any case. What ‘isinteger’ tests for is whether the input is of TYPE integer which is a different thing from a floating point number being an integer.
In addition you were supposed to test that the input integer does not exceed 3000, otherwise it is invalid.
  댓글 수: 4
OLUBUKOLA ogunsola
OLUBUKOLA ogunsola 2016년 6월 12일
this is what it returned : Operands to the and && operators must be convertible to logical scalar values.
Roger Stafford
Roger Stafford 2016년 6월 13일
You can only use the "short-circuit" logical operators on scalars, not vectors. Use | and & instead for vectors.

Image Analyst
Image Analyst 2016년 6월 11일
Try something like this:
if y - int32(y) == 0
% It's an integer.
else
% It's not an integer
message = sprintf('%f is not an integer', y);
uiwait(errordlg(message));
cent = []; % Return null.
return;
end
  댓글 수: 6
Image Analyst
Image Analyst 2016년 6월 12일
Your directions were not clear. With 2 numbers, you could have returned 2 numbers, or you could have returned null or some other error condition. Apparently your robo-grader wanted you to just return null if you passed it two numbers because that's what you did and it accepted it.

이 질문은 마감되었습니다.

태그

Community Treasure Hunt

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

Start Hunting!

Translated by