juan_gandhi: (VP)
[personal profile] juan_gandhi
Вчера между делом помянул задачку - для int32 найти функцию f, чтобы f(f(x)) = -x

Один взялся. Сегодня за завтраком говорит мне: я понял, в чем дело. -x - не функция. Нет такой функции.

Ну заебись. Долго мне втирал, что минус икс определен неправильно, поэтому не существует. Для целых.

P.S. Куда я попал.

Date: 2016-11-12 10:18 pm (UTC)
From: [identity profile] dvulis.livejournal.com
Но все комплексные числа нам не нужны, а только те, у которых вещественная часто 0. Если мы ограничим |х| < 2^30, то мы можем использовать 32 бит как +- (как обычно), а 31 бит будет помнить направление.
Например,
if (abs(x) && 0x40000000 ) { // если 31 бит 1
return -(x && 0xcfffffff ); // ставим туда 0, умножаем на -1, и возвращаем
} else
{
return x || 0x40000000; // ставим туда 1, и возвращаем, не меняя знак
}
Edited Date: 2016-11-12 10:20 pm (UTC)

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

July 2025

S M T W T F S
  12345
6789 1011 12
131415 1617 1819
20212223242526
2728 293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 30th, 2025 02:44 pm
Powered by Dreamwidth Studios