(* Question 2 *)
(* first recompute the stuff for Question 1
  to avoid having to type in the roots *)
dp=Function[{f,g},Integrate[f*g*Exp[-x^2],{x,-Infinity,Infinity}]]
nm=Function[f,Sqrt[dp[f,f]]]

N0=5;
For[k=0,k<=N0,k++,
    w[k]=x^k;
    For[j=0,j<k,j++,
        w[k]=w[k]-dp[H[j],x^k]*H[j]];
    H[k]=Simplify[w[k]/nm[w[k]]]]

Plot[H[5],{x,-2.1,2.1}]
(* next compute the roots of H[5] so we don't have
  to type them in ourselves *)
X=x/.Solve[H[5]==0,x]
Xn=N[X,16];
Print[Xn]

For[j=0,j<5,j++,
B[j]=dp[x^j,1];
Bn[j]=N[B[j],16]]
Print[Table[Bn[j],{j,0,4}]]

(* We could put the roots Xn and the integrals Bn into
  a Julia program to calculate the weights Wn, but
  it is easier to do it here. *)
EQ[0]=Bn[0]==Sum[W[k],{k,1,5}];
For[j=1,j<5,j++,
EQ[j]=Bn[j]==Sum[W[k]*Xn[[k]]^j,{k,1,5}]]

Vars=Table[W[j],{j,1,5}]
Eqns=Table[EQ[j],{j,0,4}]

(* since the Wn have to be paired with the Xn
  make a table to show which goes with which *)Wn=Flatten[Vars/.Solve[Eqns,Vars]]

T1=Table[{Xn[[j]],Wn[[j]]},{j,1,5}];
Grid[Prepend[T1,{"Xn","Wn"}]]