Approximating pi/4 using Wallis Product - SICP exercise 1.31
Is my first solution still a correct representation of the formula even if it evaluates two terms on each approximation? Or is it the first solution with the correct representation?


Although both solutions may be mathematically equivalent in theory, they are vastly different in practice.  The first uses floating-point constants, which leads to inexact math.  The second one uses exact math.


  How can I improve them?


In general, you should avoid using recursion directly when there are higher-level abstractions that fit.  For example, here are some ways you could restructure your code around streams:


Generate one stream for terms in the numerator and one stream for terms in the denominator.  Then use stream-map to divide successive terms.  Take the first n terms of the result, and reduce with +.
Produce a stream of successive approximations of \$π\$.  There are several ways to do this.  For example, you could use cons-stream, but it would also be possible (if you define a few auxiliary functions) to tweak the strategy outlined in the preceding point.  Then take the nth item of this stream.