В последнее время я пытаюсь освежить знания по математике, которые мне следовало изучить в старшей школе. (Я не обращал на это особого внимания.) В этом плане вступительные экзамены в колледж и Octave составляют отличную пару.
Сегодня утром я добрался до дробных степеней. И Октав приготовил для меня нечто удивительное:
octave:41> (9 ^ 1/2)
ans = 4.5000
octave:42> (9 ^ .5)
ans = 3
octave:43> (9 ^ 0.5)
ans = 3
Может быть, я задремал, когда мы проходили это в старшей школе, но нет... По словамэтот сайт,
Кстати, некоторые десятичные степени можно записать и в виде дробных показателей. Если вам дано что-то вроде "35,5", помните, что 5,5 = 11/2, поэтому:
3 ^ 5,5 = 3 ^ 11/2
Так что, очевидно, есть какая-то причина, по которой octave
эти два выражения оцениваются по-разному...
Почему Octave оценивает дробные степени по-другому? Это не функция, или есть веская причина, почему это должно быть так?
решение1
Я не эксперт по Octave, но похоже, что Octave анализирует "9 ^ 1/2" как "(9^1)/2". То есть оператор возведения в степень имеет более высокий приоритет (крепче связывает), чем деление. Попробуйте заключить в скобки так: "(9 ^ (1/2))".