не люблю такие задачи...помню была задача "выведи рандомное число без каких-либо паттернов сдвига, библиотек/модулей, условий циклов и всего подобного(и без библиотек(включая системных) для работы со временем)"
у меня есть мысля...не знаю на сколько она верна: можно создать переменную int i = 1000; и можно установить обработчик исключения на zero division, в функции a нужно сделать декремент i и попытку поделить что-то на i..хм..сли i не 0, то исключения не будет и снова вызываем a