MATLAB: Error using ==> sprintf

prompt{1}=('Enter your Name :');
prompt{2}='Enter Marks :');
prompt{3}='Enter aggregate :');
name='Student';
z=(inputdlg(prompt{1},name, [1 30]));
x=str2double(inputdlg(prompt{2},name, [1 30]));
y=str2double(inputdlg(prompt{3},name, [1 30]));
a=xlsread('inputdata.xlsx');
Actual_output=a(ismember(a(:,1:2),[x y],'rows'),3);
message = sprintf('The name is: %s \n Marks : %.1f \n Aggregate is : %.1f \n The grade is : %.1f \n ',z,x,y,Actual_output);
uiwait(msgbox(message));
ERROR is
??? Error using ==> sprintf
Function is not defined for 'cell' inputs.

Best Answer

Replace z by z{1} (because z is a cell array)
message = sprintf('The name is: %s \n Marks : %.1f \n Aggregate is : %.1f \n The grade is : %.1f \n ',z{1},x,y,Actual_output);