A while ago I found this algorithm. Today I read in wikipedia that Euler zig zag numbers can be used for computing the Bernoulli numbers. This Mathematica program computes the Euler zig zag numbers and there after the Bernoulli numbers.
Clear[nn, A1, A2, A3, A4, A5, A6, A7, A8, A9]
nn = 42;
Clear[t, n, k];
t[n_, 1] = 1;
t[n_, k_] :=
t[n, k] =
If[n >= k, Sum[t[n - i, k - 1] + t[n - i, k], {i, 1, 1}], 0];
A1 = Table[Table[t[n, k], {k, 1, nn}], {n, 1, nn}];
MatrixForm[A1];
Clear[t, n, k];
t[n_, 1] = If[Or[Mod[n, 4] == 1, Mod[n, 4] == 0], 1, -1];
t[n_, k_] := t[n, k] = If[n >= k, t[n - 1, k - 1], 0];
A2 = Table[Table[t[n, k], {k, 1, nn}], {n, 1, nn}];
MatrixForm[A2];
Clear[t, n, k];
t[n_, k_] :=
t[n, k] = If[n >= k, If[n == k, 1, If[Mod[k, 2] == 1, 0, 1]], 0];
A3 = Table[Table[t[n, k], {k, 1, nn}], {n, 1, nn}];
MatrixForm[A3];
Clear[t, n, k];
t[n_, k_] :=
t[n, k] = If[n >= k, If[n == k, 1, If[Mod[k, 2] == 1, 1, 0]], 0];
A4 = Table[Table[t[n, k], {k, 1, nn}], {n, 1, nn}];
MatrixForm[A4];
A5 = A1*A2*A3;
MatrixForm[A5];
A6 = A1*A2*A4;
MatrixForm[A6];
A7 = Inverse[A5];
MatrixForm[A7];
A8 = Inverse[A6];
MatrixForm[A8];
A9 = A7 + A8 - IdentityMatrix[nn];
MatrixForm[A9];
Total[Transpose[A9]];
aa = A9[[All, 1]];
Table[(-1)^Floor[n/2]*n/(2^n - 4^n)*aa[[n]], {n, 2, Length[aa], 2}];
Denominator[%];
Table[(-1)^(2*n)*(n*2)/(2^(n*2) - 4^(n*2))*aa[[2*n]], {n, 1,
Length[aa]/2}]
Denominator[%]
Output: {-(1/6), -(1/30), -(1/42), -(1/30), -(5/66), -(691/2730), -(7/6), -( 3617/510), -(43867/798), -(174611/330), -(854513/138), -(236364091/ 2730), -(8553103/6), -(23749461029/870), -(8615841276005/14322), -( 7709321041217/510), -(2577687858367/6), -(26315271553053477373/ 1919190), -(2929993913841559/6), -(261082718496449122051/13530), -( 1520097643918070802691/1806)}
Denominators: {6, 30, 42, 30, 66, 2730, 6, 510, 798, 330, 138, 2730, 6, 870, 14322, \ 510, 6, 1919190, 6, 13530, 1806}
Since it is basically matrix inversion of the Pascal triangle, can we find a closed form for the Bernoulli numbers?