Equidistant log scale points
Take the log of your extremities, find your points as if it were on a linear scale beween these extremities, take the exponential of the result.

Example:

The log of your extremities are $\log 100$ and $\log 4000$. Your 10 points on a linear scale between these values would be: $\log 100 + k \frac{\log 4000 - \log 100}{9}$, $k \in \{0, 1, \ldots, 9\}$.

Taking the exponential: $e^{\log 100 + k \frac{\log 4000 - \log 100}{9}}$. Notice that the first and last values are 100 and 4000 as expected.

This works well with linspace in programming languages which have this primitive, for example with python/numpy:

numpy.exp(numpy.linspace(numpy.log(100), numpy.log(4000), 10))


The second part of your question is not clear. To generate more points by preserving the same spacing, continue increasing $k$ above 9.