Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Возведение в произвольную степень.


Автор: @strum 29.8.2002, 18:52
Народ, я облазил весь хелп, но ничего не накопал. Как возвести X в степень Y?
При том, Y может быть и дробным числом. Кажется, с помощью логарифмов не получится, если я не слишком хорошо забыл алгебру.

Автор: Seregy 29.8.2002, 20:18
если есть функция exp(x), то можно.

z=x^y

z=exp(y*ln(x))

Автор: Mikel 30.8.2002, 04:28
Функция power в uses math.

Автор: Kesh 30.8.2002, 09:00
От себя добавлю, если степень небольшая, то возводи умножением в цикле, всяк умнож. делается быстрее, чем возведение в степень.... звините, но компьютер всегда имеет слишком малую вычислительную мощьность, поэтому оптимизация, оптимизация и еще раз оптимизация... Это я еще по старым компам помню...

Автор: Baa 30.8.2002, 10:06
Цитата(kesh @ 30.8.2002, 02:00)
всяк умнож. делается быстрее, чем возведение в степень.... звините, но компьютер всегда имеет слишком малую вычислительную мощность, поэтому оптимизация, оптимизация и еще раз оптимизация... Это я еще по старым компам помню...

Хм, вообще-то нет процессорной команды, которая бы возводила в степень...
Эт вот как раз умножение делается быстрее деления - эт да...А возведение сводится к разложению на другие операции.

Автор: @strum 31.8.2002, 09:00
Спасибо, ребята, за формулу. А насчёт умножения - я уже думал. А если степень дробная? ;)  Полтора раза не умножишь. =)

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