корень нечетной степени, как добыть корень? |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
корень нечетной степени, как добыть корень? |
sheka |
Сообщение
#1
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
как добыть корень нечетной степени?
я пробовал разложить нечетную степень через четные, но ничего не получается.( например 7 степени) |
volvo |
Сообщение
#2
|
Гость |
Что значит "не получается"? Возводить в степень 1/7, например, пробовал?
|
sheka |
Сообщение
#3
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
|
Lapp |
Сообщение
#4
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
это как? из этой темы знаю есть sqr, sqrt. Еще есть Exp(x) и Ln(x) из той же темы)).Знаешь такие функции и формулы для них? -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
sheka |
Сообщение
#5
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
|
Lapp |
Сообщение
#6
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Натуральный при том, что именно он есть в стандартной библиотеке. Ко всему прочему, именно он напрямую связан с экспонентой (а точнее, является обратной функцией к ней).
если можешь вкратце сказать - скажи Могу и вкратце, если хочешь.exp(x) <=> ex a = eLn(a) ax = (eLn(a))x = eLn(a)*x = exp(Ln(a)*x) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
evg |
Сообщение
#7
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: евгений Репутация: 0 |
Натуральный при том, что именно он есть в стандартной библиотеке. Ко всему прочему, именно он напрямую связан с экспонентой (а точнее, является обратной функцией к ней). Могу и вкратце, если хочешь. exp(x) <=> ex a = eLn(a) ax = (eLn(a))x = eLn(a)*x = exp(Ln(a)*x) подскажите, почему по учебной программе,мне при вводе sgrt(пробовал и sgr) выходит ошибка индификатора |
volvo |
Сообщение
#8
|
Гость |
Потому что не SGRT, а SQRT
|
evg |
Сообщение
#9
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: евгений Репутация: 0 |
|
sheka |
Сообщение
#10
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
а если основа отрицательная, то просто проверять условием? и потом доумножать на -1 ?
|
volvo |
Сообщение
#11
|
Гость |
Цитата а если основа отрицательная, то любой нормальный компилятор выбросит исключение (в частности, FPC выбрасывает EInvalidArgument). Дельфи - EInvalidOp... А теперь подумай, что, не могли авторы предусмотреть такой простой вещи, как Цитата проверять условием? и потом доумножать на -1 ? ? Или, может, по другой причине не стали реализовывать данный функционал? |
sheka |
Сообщение
#12
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
Честно, я вообще не могу понять, почему авторы не могли предусмотреть функции поднесения в степень. Разве что в определенных случаях это может кому-нибудь навредить, хотя я не представляю кому и чем.
Вот думал сделать так: if x <> 0 then znam := exp(ln(abs(x))/3); но не понимаю, чем это Вам не нравится. К чему вы клоните? к тому, что это надо делать исключениями? Ну в таком случае, почему-то ФП слово try распознает как переменную: try |
volvo |
Сообщение
#13
|
Гость |
Цитата не понимаю, чем это Вам не нравится. Мне? Да я вообще ничего про себя не говорил. Я говорил о том, что в компиляторах, более продвинутых чем Турбо Паскаль, этого функционала НЕТ. Это констатация факта, и призыв подумать над тем, почему его нет. А не изобретать велосипед.Цитата это надо делать исключениями? Ну в таком случае, почему-то ФП слово try распознает как переменную: Вообще-то надо добавлять "у меня". Вот нормально настроенный FPC - не воспринимает:Кстати, здесь выбрасывается EInvalidOp, потому что нельзя вычислять логарифм от отрицательного значения. А вот использование Math.Power выбросит именно EInvalidArgument... А вообще, надо бы использовать модуль Math, там уже есть функция Power. Зачем понадобилось переписывать вручную - непонятно. |
sheka |
Сообщение
#14
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
Извините за недоходчивость, о каком "данном функционале" идет речь? Вы говорите о том, что вот этим
if x <> 0 then znam := exp(ln(abs(x))/3);пользуются только на Турбо Паскале, а в более новых компиляторах - исключениями или подключают модуль Math? Эх.. Начинаю знакомиться с ТП. Вот через месяц начну. А пока выдали лабораторные на семестр. Я открыл первую, вот там задание (чуть упростил) : вывести на экран результат a = 1/КореньКубический(х) Сообщение отредактировано: sheka - |
Lapp |
Сообщение
#15
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Извините за недоходчивость, о каком "данном функционале" идет речь? Вы говорите о том, что вот этим if x <> 0 then znam := exp(ln(abs(x))/3); sheka, то, что ты написал - это просто неверно (то есть верно только при многих огворках). И причина не в ограниченности программных средств, а в математике. Тут был топик про отрицательные основания, поищи его. В общем случае операция возведения в степень определена только на комплесных числах, а их аппаратной реализации пока нет. В частном случае целой нечетной степени корня ее выполнение возможно без выхода за пределы действительных чисел (если отбросить остальные значения), но это довольно большая условность. Поэтому реализация данного функционала оставлена пользователю )). -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Lapp |
Сообщение
#16
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
вот та тема:
возведение в вещественную степень отрицательного числа Правда, там в самом конце пришел какой-то Пупорев и не разобравшись (наверное, даже и не прочитав) тоже влепил все ту же ошибку, типа он самый умный, чтоб всем "помочь".. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
sheka |
Сообщение
#17
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
Спасибо за подробное объяснение!!!
Видно плохо в школе учился. Ну если вдруг буду сочинять задания сам - никогда такого не придумаю. Но что мне делать если все таки надо посчитать x1/3? Если x<0 выводить "ошибка"? а если х = 0, тогда выводить 0 или тоже "ошибка"? |
TarasBer |
Сообщение
#18
|
Злостный любитель Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
> как добыть корень нечетной степени?
> Но что мне делать если все таки надо посчитать x1/3? Сначала определись. x^(1/3) официально не определён для x < 0 3Vx (типа корень третьей степени я так нарисовал) официально определён для всех вещественных икс, причём 3V(-x)=-3Vx. То есть x^(1/3) и 3Vx это разные вещи как бы. -------------------- |
sheka |
Сообщение
#19
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
Вот как-то никогда не думал, что x^(1/3) и 3Vx это разные вещи.
|
Мира |
Сообщение
#20
|
Гость |
помогите пожалуйста срочно!!!!
корень в кубе |(x-a)| как написать это в программе |
Текстовая версия | 11.01.2025 4:14 |