Desafio
Desafio é escrever um programa que leva positivos números a
e um zero número b
e saídas a^b
(a elevado à potência b). Você só pode usar + - * / abs()
como funções / operadores matemáticos. Eles podem ser aplicados apenas a valores escalares, mas não a listas ou matrizes inteiras.
Exemplos:
1.234 ^ 5.678 = 3.29980
4.5 ^ 4.5 = 869.874
4.5 ^-4.5 = 0.00114959
Relevante: http://xkcd.com/217/
Detalhes
Você pode escrever uma função ou uma construção semelhante para usar no console. Se você não pode usar a entrada do console, pode assumir que os dois números são salvos em variáveis e saídos via saída padrão ou gravando em um arquivo. A saída deve estar correta para pelo menos 4 dígitos significativos. Você pode assumir que ambos a
e b
são diferentes de zero. Um tempo de execução significativamente maior que 1 minuto não é aceitável. O menor número de bytes vencerá. Por favor, explique seu programa e seu algoritmo.
EDIT: Apenas bases positivas devem ser consideradas. Você pode assumir a>0
. Esteja ciente de que os dois números não precisam ser inteiros !!!
-0.5 ** 0.5
?