Я постараюсь ответить, не выдавая большого количества кода ...
1) Используйте строку, чтобы удерживать продукт
2) Выполните длинное умножение (как вы делали в школе)
Prod = "1"
for n = 1 to 1000
carry = 0
newprod = ""
for i = strlen(prod) - 1 to 0 step - 1
digit = int(prod[i])
p = digit * 2 + carry
newprod = (p % 10) & newprod // append
carry = p / 10
next
if( carry > 0) newprod = carry & newprod
prod = newprod
next
print prod
Кодировка блокнота здесь ... так что, если кто-то найдет ошибки, исправьте их.