MATLAB: What’s the program mistake

symbolic variable

clear all
clc;
syms a b c
w=zeros(3,1);
w(1,1)=3*a+b;
w(2,1)=b+2;
w(3,1)=c-a;
disp(w)
b=3;
disp(w)

Best Answer

w = sym(zeros(3,1))
You preallocated w as a numeric type and then tried to stuff a sym into it. If you preallocate w as a symbolic, it works as expected.