Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2008, 18:22   #1
Roberto
Пользователь
 
Регистрация: 02.04.2008
Сообщений: 32
По умолчанию Возведение числа в степень

Нужно возвести отрицательное число в определенную степень(3, 4, 5,....), как это сделать, подскажите пожалуйста кто знает, очень надо, может какая нибудь встроенная функция есть.. Я толко знаю такую формулу exp(x*ln(n)), но она как вы знаете может работать только с положительными числами(n>0).
Roberto вне форума Ответить с цитированием
Старый 03.04.2008, 18:26   #2
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Ну, так и возводите положительное число, если степень нечетная добавляйте минус.
_Dmitry вне форума Ответить с цитированием
Старый 03.04.2008, 18:28   #3
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

function sqrS(a: integer; stepen: integer) : integer;
var i: integer;
begin
for I:=2 to stepen do
a:=a*a;
sqrS := a;
end;
Hollander вне форума Ответить с цитированием
Старый 03.04.2008, 19:23   #4
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

Можно было бы хоть язык указать....
в си есть функция pow(i,n) получим i в степени n
maLoy*508 вне форума Ответить с цитированием
Старый 03.04.2008, 19:53   #5
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

По моему exp(x*ln(n)) - синтаксис паса
Hollander вне форума Ответить с цитированием
Старый 03.04.2008, 21:02   #6
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Function Pow(A,B:Real):Real;
{ Функция возведения в степень (A^B) }
Var T:Real;
Begin
T := Abs(A);
If A < 0 Then Pow := (-1)*Exp(B*Ln(T))
Else Pow := Exp(B*Ln(T));
End;
puporev вне форума Ответить с цитированием
Старый 03.04.2008, 21:07   #7
Xardas
Сисадмин
Форумчанин
 
Аватар для Xardas
 
Регистрация: 28.12.2007
Сообщений: 320
По умолчанию

Цитата:
Сообщение от puporev Посмотреть сообщение
Function Pow(A,B:Real):Real;
{ Функция возведения в степень (A^B) }
Var T:Real;
Begin
T := Abs(A);
If A < 0 Then Pow := (-1)*Exp(B*Ln(T))
Else Pow := Exp(B*Ln(T));
End;
А если степень четная... Тогда надо добавить условие проверки четности (или нечетности) степени после проверки на отрицательность.

Последний раз редактировалось Xardas; 03.04.2008 в 21:10.
Xardas вне форума Ответить с цитированием
Старый 03.04.2008, 21:48   #8
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

в делфях есть функция power. ну если нужно на паскакале, то оттуда скомуниздить можно
pu4koff вне форума Ответить с цитированием
Старый 04.04.2008, 22:24   #9
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Hollander, a:=a*a в цикле будет возвращать 2-, 4-, 8- , 16 -ю степень, а не 2-, 3-, 4-, 5- ю соответственно.
type_Oleg вне форума Ответить с цитированием
Старый 05.04.2008, 09:50   #10
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Цитата:
Нужно возвести отрицательное число в определенную степень(3, 4, 5,....),
Если степень натуральное число, как приведено в примере
то так:
Код:
var a,b:real;n,i:integer;
b:=1;
for i:=1 to n do
b:=b*a;
Получаем b= а в степени n.
puporev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возведение в степень на Pascal LORD-BY Помощь студентам 32 28.02.2018 07:48
Возведение в степень Stanislav Общие вопросы Delphi 10 05.12.2007 23:34
Возведение в степень... Sota Общие вопросы C/C++ 7 18.07.2007 17:05
Задачи по массивам + возведение действительного числа в действительную степень springgirl Помощь студентам 2 24.04.2007 03:26
Delphi Возведение в степень Luska Помощь студентам 6 23.04.2007 17:51