Виклик
Challenge - це написання програми, яка приймає додатні числа a
та ненульове число b
та виводить a^b
(підняте на потужність b). Ви можете використовувати лише + - * / abs()
як математичні функції / оператори. Вони можуть застосовуватися лише до скалярних значень, але не до цілих списків чи масивів.
Приклади:
1.234 ^ 5.678 = 3.29980
4.5 ^ 4.5 = 869.874
4.5 ^-4.5 = 0.00114959
Відповідне: http://xkcd.com/217/
Деталі
Ви можете написати функцію або подібну конструкцію для використання в консолі. Якщо ви не можете використовувати введення консолі, ви можете припустити, що обидва числа зберігаються у змінних та виводяться за допомогою стандартного виводу або запису у файл. Вихід повинен бути правильним щонайменше 4 значними цифрами. Можна припустити, що і те, a
і інше b
є ненульовим. Час виконання значно більше 1 хвилини не прийнятний. Найменша кількість байтів виграє. Поясніть, будь ласка, свою програму та свій алгоритм.
EDIT: Необхідно враховувати лише позитивні основи . Можна припустити a>0
. Будьте в курсі, що обидва числа не повинні бути цілими числами !!!
-0.5 ** 0.5
?