Max Payne не несет никакой ответственности
за последствия от чтения бреда, написанного здесь.



30.01.2006   Шаманства

Закончил вроде бы шаманства с дизайном своего ЖЖ. Оставлю пока так, лучше ничего пока все равно не придумал :))

И решил запостить сюда еще один, довольно старый, пример шаманства:

class tlong
{
public:
tlong();
tlong(const string&);
friend bool operator= 0; --i)
{

a[len] += t * (s[i] - '0');
t *= 10;
++q;
if (q == DIG) ++len, q = 0, t = 1;

}
if (q >0) ++len;
}

tlong::~tlong()
{
}

void tlong::print()
{
cout = 0; --i)
{
for (int t = BASE / 10, q = a[i]; t > 0; q %= t, t /= 10)
cout = 0; --i)
{
if (a.a[i] > b.a[i]) return false;
if (a.a[i] < b.a[i]) return true;
}
return false;
}

inline const tlong operator-(const tlong& a, const tlong& b)
{
if (a < b)
{
tlong t = b;
t -= a;
return t;
}
tlong t = a;
t -= b;
return t;
}

void tlong::operator-=(const tlong& t)
{
int l = max(len, t.len);
for (int i = 0; i < l; ++i)
{
a[i] -= t.a[i];
if (a[i] < 0)
{
a[i] += BASE;
--a[i + 1];
}
}

while ((l > 1) && (a[l - 1] == 0))
--l;
len = l;
}

inline void tlong::operator+=(const tlong& t)
{
len = max(t.len, len);
int r = 0;
for (int i = 0; i < len; ++i)
{
a[i] += t.a[i] + r;
r = a[i] / BASE;
a[i] -= r * BASE;
}
if (r > 0)
{
a[len] = r;
++len;
}
}

inline const tlong operator+(const tlong& a, const tlong& b)
{
tlong t = a;
t += b;
return t;
}

Зацените и ужаснитесь :)

30.01.2006, 02:51


Дневники друзей:
CheshireKitty, Nimue, Nirvana, Rafaella, Scarabeyka, scher, Zyabik, Дитя Пробирки, КСЕНТА, Кэрри