randRangeNonZero(-8, 8) randFromArray([-1, 1]) * randRange(1, 4) randRange(1, 4) randRange(3, 5) randRange(-N - 1, 0) _.map(_.range(N), function(i) { if (i + OFFSET >= 0) { return reduce(A * pow(RN, i + OFFSET), pow(RD, i + OFFSET)); } else { return reduce(A * pow(RD, -i - OFFSET), pow(RN, -i - OFFSET)); } }) reduce(A * pow(RN, N + OFFSET), pow(RD, N + OFFSET)) fractionReduce(RN, RD) _.map(GIVEN, function(f) { return fractionReduce.apply(KhanUtil, f); })

The first cardinalThrough20(N) terms of a geometric sequence are given:

`GIVEN_TEX.join(","), \ldots`

What is the ordinalThrough20(N + 1) term in the sequence?

A * pow(RN / RD, N + OFFSET)

In any geometric sequence, each term is equal to the previous term times the common ratio.

Thus, the second term is equal to the first term times the common ratio. In this sequence, the second term, `GIVEN_TEX[1]`, is `R_TEX` times the first term, `GIVEN_TEX[0]`.

Therefore, the common ratio is `R_TEX`.

The ordinalThrough20(N + 1) term in the sequence is equal to the ordinalThrough20(N) term times the common ratio, or `GIVEN_TEX[N - 1] \cdot R_TEX = fractionReduce(A * pow(RN, N + OFFSET), pow(RD, N + OFFSET))`.