MATLAB: Function deal()

dealMATLABsingle inputvariable distribution

I'm having trouble getting deal() to place one number in multiple places. My lines of code:
y1=[];
y2=[];
y3=[];
y={y1 y2 y3};
y=deal(5);
gives me the error: The right hand side of this assignment has too few values to satisfy the left hand side.

Best Answer

y = cell(1,3); % dispense with the y1, y2, y3 stuff....
[y{:}] = deal(5)
or, without defining the variable first:
[Y{1:3}] = deal(5) % Y is not defined before this line..
But why use DEAL at all?
y = cell(1,3);
y(:) = {9}