Octave, 24 bytes
@(m,n)diff(fix(0:m/n:m))
The code defines an anonymous function. The output is a row vector (numeric array). When there is no this array contains at least one zero, which is falsy in Octave.
Explanation
0:m/n:n
produces an array of values from 0
to n
with step m/n
. fix
rounds each entry towards 0
, and diff
computes consecutive differences.
As an example, here are all intermediate results fo m = 7
, n = 3
:
>> 0:m/n:m
ans =
0 2.3333 4.6667 7.0000
>> fix(0:m/n:m)
ans =
0 2 4 7
>> diff(fix(0:m/n:m))
ans =
2 2 3