Честно подсмотрел решение у одного из участников, но так и не понял решения. Может кто-то на пальцах пояснить, как это работает? Зачем нам вводить второй множитель именно в теле первого while?