Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Алгоритм] Вещественное число в натуральной степени


Автор: FantomaS19 11.10.2007, 15:41
Как его найти, не используя операцию умножения, деления и возведения в степень?

Автор: SoWa 11.10.2007, 15:57
a=exp(n*ln(b)) <==> a=b^n

Автор: maxim1000 11.10.2007, 17:03
а что можно использовать?

Автор: SoWa 11.10.2007, 19:05
А можно операцией "+" в нескольких циклах smile

Автор: FantomaS19 11.10.2007, 19:29
Цитата

a=exp(n*ln(b)) <==> a=b^n

 smile Не, так не годится. Без использвования стандартных функций надо.Абстрактный алгоритм.

Цитата

а что можно использовать?

Из условия задачи я думаю что только сложение и вычитание, но я могу ошибаться 

Цитата

А можно операцией "+" в нескольких циклах 

Я так пробовал, но у меня получилось только для натуральных чисел. smile 

Автор: esperant0 12.10.2007, 06:36
Цитата(FantomaS19 @ 11.10.2007,  19:29)
Цитата

a=exp(n*ln(b)) <==> a=b^n

 smile Не, так не годится. Без использвования стандартных функций надо.Абстрактный алгоритм.
 

Конечно годится, прочитайте условие данное автором!!!



Автор: Walker 12.10.2007, 07:17
Цитата

Цитата

А можно операцией "+" в нескольких циклах 

Я так пробовал, но у меня получилось только для натуральных чисел. smile 

Должно получится для любых, вопрос только в точности и величинах! Вы же суммируете переменную объявленного типа. Что не выходит с вещественными?

Автор: kali 12.10.2007, 09:03
Цитата(Walker @  12.10.2007,  06:17 Найти цитируемый пост)
Цитата
Должно получится для любых, вопрос только в точности и величинах! Вы же суммируете переменную объявленного типа. Что не выходит с вещественными?


вполне логично что не выходит. Попробуй Pi в куб возвести используя только операцию сложения.

Автор: FantomaS19 12.10.2007, 13:21
Цитата

Цитата(Walker @  12.10.2007,  06:17 ) 
Цитата
Должно получится для любых, вопрос только в точности и величинах! Вы же суммируете переменную объявленного типа. Что не выходит с вещественными?

вполне логично что не выходит. Попробуй Pi в куб возвести используя только операцию сложения.

Я о том же.Возведение в степень == n-ное количество умножений, а умножение == n-ное количество сложений, где n- натуральное число!А в случае с вещественным получается что нужно складывать например 
3.14 раз по 3.14

Автор: Walker 12.10.2007, 14:29
Да, верно, переглючил, прошу извинить!
В сторону рядов смотреть не пробовали? Хотя... там тоже операции деления и умножения не редкость. А можно узнать природу возникновения этого вопроса?

Автор: FantomaS19 12.10.2007, 19:10
Цитата

В сторону рядов смотреть не пробовали?

Нет, не пробовал.Получится, если найти ряд только с умножениями и сложениями натуральных чисел, 
что думаю вряд ли возможно. 

Цитата

А можно узнать природу возникновения этого вопроса?

Самое дорогое(в смысле трудное) задание из темы Алгоритмы.Тест проводила одна фирма в универе.

Автор: maxim1000 12.10.2007, 22:30
Цитата(FantomaS19 @  12.10.2007,  19:10 Найти цитируемый пост)
Получится, если найти ряд только с умножениями и сложениями натуральных чисел,


Цитата(FantomaS19 @  11.10.2007,  15:41 Найти цитируемый пост)
Как его найти, не используя операцию умножения, деления и возведения в степень?


что-то непонятно с умножением... то можно, то нельзя...

Автор: FantomaS19 13.10.2007, 07:53
Цитата

что-то непонятно с умножением... то можно, то нельзя...

Умножение натуральных чисел == n - ное количество сложений smile 

Автор: Amber 27.11.2007, 11:10
В свое время столкнулся с похожим заданием когда по 8080 програмировал на асме...Если еще актуально могу поискать книжечку где расписаны примеры решения. Но там на ассемблере(правда достаточно простом)...умножение кстати это еще пол беды...вот деление попробуй организуй когда из всех мат операций у тебя только +,-  и возможность сравнить равно одно число другому или нет.Правда если одно из друго вычесть то вылетает флаг переполнения.

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