Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Как разложить число на 2 составных?


Автор: oleeg 24.3.2010, 21:06
Всем привет.
Есть число, степень двойки. Скажем, 2 в 10 (1024). Нужно разложить его на 2 множителя, причем, чтобы они были примерно равны ( из этого числа можно извлечь корень и множители будут равны 32, но из 2 в 11 целый корень извлечь не получиться). 
Как?
Спасибо.

Автор: Freak_FB 24.3.2010, 22:17
Если конкретно известно, что это степень двойки - получи логарифм этого числа по основанию двойки (иными словами, узнай, что это за степень двойки). Это число дели пополам. Получай от результата целую часть. Возводи двойку в полученное значение. Это первый множитель.
Второй множитель узнается делением Исходного числа на первый множитель.

P.S.: причем тут .NET???

Автор: oleeg 24.3.2010, 22:52
уже так сделал smile
Код

int n1 = (int)Math.Pow(2,pow/2);
int n2 = n/n1;


Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)