(*uu=1.546111515004;
FromDigits[RealDigits[uu,10,5]]//N*)

Off[General::"spell1"];
d=0.4;
λ=0.7;
cp=840;
ρ=1600;
a=(λ/(ρ*cp));
Print["a = ",N[a,2],"  (m^2).(s^(-1))"];
n=3*5;
Δx=(d/n);
Print["Δx = ",Δx,"  m"];
ClearAll[Δt];
Fo=((a*Δt)/((Δx)^2));
Δtmax=Δt/.Solve[Fo==0.5][[1]];
Print["Δtmax = ",N[Δtmax,2],"  s"];

Δt=600;
Tpoc=20;
Tpolepoc=Array[Tpoc&,n];
To1=20;
Ton=-5;
α1=5;
αn=20;
fT1[T2_]=T1/.Solve[((-λ)/(Δx))*(T2-T1)==α1*(To1-T1),T1][[1]];
fTn[Tnminus_]=Tn/.Solve[((-λ)/(Δx))*(Tn-Tnminus)==αn*(Tn-Ton),Tn][[1]];
krok[list_List]:=Module[{Tpom},Tpom=ListConvolve[{Fo,(1-2Fo),Fo},list];AppendTo[Tpom,fTn[Last[Tpom]]];PrependTo[Tpom,fT1[First[Tpom]]]];
hodina=3600;
tmax=6*hodina;
nsteps=Round[(tmax/(Δt))];
teppole=NestList[krok,Tpolepoc,nsteps];
plotik[list_List,ntime_Integer]:=Module[{nel=Length[list],listpom,i},lispom=Table[{(i-1)*Δx,list[[i]]},{i,1,nel}];ListPlot[lispom,AxesLabel->{"x[m]","T[°C]"},PlotRange->{Automatic,{Ton-2,To1+2}},tpopis=ntime*Δt;PlotLabel->TraditionalForm/@{"t=",tpopis,"s"},Joined->True]];

Manipulate[plotik[teppole[[i]],i-1],{i,1,Length[teppole],1}]