В первом алгоритме age-- и year-- выполняются после document.write().
Во втором алгоритме в начале выполняется age--, потом document.write() и в конце уже year--. По приведенной выше ссылке это написано.
Работающее решение:
for ( i = 0; age !== i ; year--, age--)