Nx=20;
Nt=100;
x=linspace(0,1,Nx);

u(1:Nx,1)=sin(pi*x);

clf
plot(x,u(:,1),'bo-');
hold on

h=x(2)-x(1);
dt=0.45*h*h;

for n=1:Nt
u(1,n+1)=0;
u(Nx,n+1)=0;
for i=2:Nx-1
    u(i,n+1)=u(i,n)+dt/h^2*(u(i+1,n)-2*u(i,n)+u(i-1,n));
end
end

plot(x,u(:,end),'ro-');