error using zeros in matlab

조회 수: 6 (최근 30일)
JT
JT 2015년 11월 18일
편집: Jan 2017년 10월 4일
er = zeros(1, .125*N); % eigth rest
qr = zeros(1, .25*N); % quarter rest
hr = zeros(1, .5*N); % half rest
tr = zeros(1, .75*N); % three-quarter rest
wr = zeros(1, N); % whole rest
I get the error Error using zeros Size inputs must be integers.
Error in pleasework (line 49) er = zeros(1, .125*N); % eigth rest
>>
  댓글 수: 4
Akhil Sen Roy
Akhil Sen Roy 2017년 10월 4일
편집: Akhil Sen Roy 2017년 10월 4일
so whats the final answer ?? did you manage to solve it ?
Jan
Jan 2017년 10월 4일
편집: Jan 2017년 10월 4일
John's answer is clear enough. The solution is trivial: zeros creates an array, and therefore the number elements must be integers. It is not clear what zeros(1, 0.125*N) should do if N is not a multiple of 8.

댓글을 달려면 로그인하십시오.

채택된 답변

John D'Errico
John D'Errico 2015년 11월 20일
편집: John D'Errico 2015년 11월 20일
I wonder, what are the odds that N is not an integer multiple of 8?
Zeros requires integer arguments. READ THE ERROR MESSAGE! If N is not an integer multiple of 8, then when you multiply by 0.125, you get a non-integer. So you need to think about what size you really need for this vector. If I had to guess, you might want to round up or round down, but this is your code, so you are the one who knows what you wanted to do.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Shifting and Sorting Matrices에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

Community Treasure Hunt

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

Start Hunting!

Translated by