Я покажу вам очень простой пример, очень вызывает факториальный подсчет с рекурсией, но есть одна деталь, которая очень важна, давайте посмотрим на мой код, затем я напишу, в чем моя проблема.
#define PASSWORD_MAX 0x28
typedef unsigned long long longtype;
#include <iostream>
using namespace std;
longtype f(longtype n)
{
return (n <= 1) ? 1 : f(n - 1) * n;
};
void main(void)
{
for(longtype i = 0; i <= PASSWORD_MAX; i++)
{
if(f(i) != 0) cout << i << " -> " << f(i) << endl;
};
};
После этого кода я получил следующий результат: http://pastebin.com/ZHPtJBZ7
Максимальный читаемый результат: 22 -> 17196083355034583040
С 23 до конца, как я понимаю, в степени "е" есть только числа, как я могу печатать значения из 23 полностью, а не в сокращенном формате?
Спасибо, С наилучшими пожеланиями!