|
|
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
А именно 0, 1, 2 (,3 ,4). pow -- тупо цикл -- тупо case -- тупо А красиво никак нельзя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 19:04 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
Тебе пора глобус менять - на планете земля остался лишь табличный способ, но боюсь он тебя не удовлетворит - но на всякий случай - берешь для каждого 2^[32|64] составляешь таблицу натуральных степеней и наслаждаешься сложностью O(1) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 19:13 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
Ой ВэйА красиво никак нельзя?Красиво - бинарным сдвигом влево единицы на величину степени минус один. PS. 0 - не является натуральным числом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 19:15 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
x^y = exp(x*ln(y)), тока следи за корректностью переменных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 19:18 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
2miksoft ты один меня понимаешь ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 19:47 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
автор Красиво - бинарным сдвигом влево единицы на величину степени минус один Ха, "возвести 2" я как раз и пропустил - подумал, что любое целое в степень. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 20:36 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
А вот допустим нужно возвести M в степень N (M и N - натуральные) не пользуясь експонентой и заранее подготовленным массивом, каково по Вашему минимальное кол-во умножений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 21:25 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
SnowMan2А вот допустим нужно возвести M в степень N (M и N - натуральные) не пользуясь експонентой и заранее подготовленным массивом, каково по Вашему минимальное кол-во умножений.примерно так: (Log2(N) с округлением в большую сторону)+(кол-во единиц в двоичном представлении числа N)-1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 21:37 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
miksoft SnowMan2А вот допустим нужно возвести M в степень N (M и N - натуральные) не пользуясь експонентой и заранее подготовленным массивом, каково по Вашему минимальное кол-во умножений.примерно так: (Log2(N) с округлением в большую сторону)+(кол-во единиц в двоичном представлении числа N)-1Это если M - вещественное. Если M - целое, то (кол-во единиц в двоичном представлении числа N)-1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 21:39 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
С Log2(N) с округлением я согласен, а вот насчет: Если M - целое, то (кол-во единиц в двоичном представлении числа N)-1 както сомнительно, например 5 в 5-ой степени. 5 - 101 в двоичной, т.е. 2 единицы как за одно умножение не представляю (может чего-то не понял). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 21:48 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
SnowMan2С Log2(N) с округлением я согласен, а вот насчет: Если M - целое, то (кол-во единиц в двоичном представлении числа N)-1 както сомнительно, например 5 в 5-ой степени. 5 - 101 в двоичной, т.е. 2 единицы как за одно умножение не представляю (может чего-то не понял).Хм... что-то я прогнал... Я пытался использовать тот факт, что сдвиг влево эквивалентен умножению на степень двойки, но формально умножением не является надо ехать домой спать :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 21:54 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
а ведь можно все умножения заменить на сложения, т.е. минимально количество умножений - 0 :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2006, 22:09 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
miksoftа ведь можно все умножения заменить на сложения, т.е. минимально количество умножений - 0 :) Общеизвестный математический факт. Если перевести числа в логарифмический масштаб, то их сложение даст эффект умножения в масштабе обычном. В старые бородатые времена, этим пользовались. Логарифмическая линейка заменяла научный калькулятор. Вот так-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2006, 00:02 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
miksoftа ведь можно все умножения заменить на сложения, т.е. минимально количество умножений - 0 :) чем то напоминает методы индийских программистов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2006, 11:44 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
miksoftКрасиво - бинарным сдвигом влево единицы на величину степени минус один.неа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2006, 11:50 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
maXmo miksoftКрасиво - бинарным сдвигом влево единицы на величину степени минус один.неапочему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2006, 12:07 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
maXmo miksoftКрасиво - бинарным сдвигом влево единицы на величину степени минус один.неа Вроде бы самый красивый вариант для решения конкретной задачи, в самом деле, почему "неа"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2006, 12:18 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
2^n=1<<n ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2006, 12:25 |
|
||
|
Возвести 2 в натуральную степень
|
|||
|---|---|---|---|
|
#18+
ошибка была 50% ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2006, 12:27 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34191724&tid=2029847]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
169ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 516ms |

| 0 / 0 |
