[CODE SNIPPET] POWER FUNCTION.
Featured Replies
Сейчас на странице 0
- Нет пользователей, просматривающих эту страницу
A better way to browse. Learn more.
A full-screen app on your home screen with push notifications, badges and more.
Используя этот сайт, вы соглашаетесь Условия использования.
This is a working power function just created for a challenge.
power(number, power) { if (power == 0) { return 1; } else if (power == int(power)) { if (power < 0) { return 1 / pow(number, power * -1); } else { return pow(number, power); } } else { neg = false; if (power < 0) { neg = true; power *= -1; } exp = 1 / power; if (exp != int(exp)) { l = false; for (i = 2; !l; i++) { b = i * exp; if (b == int() { number = pow(number, i); exp = b; l = true; } } } if (neg) { return 1 / root(number, exp); } else { return root(number, exp); } } return number; } pow(number, integer) { new = number; for (i = 2; i <= integer; i++) { new *= number; } return new; } root(n, power) { // Precision measures - specials must be used with power() if (!isDefined(power) || power == 2) { return sqrt(n); } if (n == 0 || n == 1) { return n; } // Near measures old = 1; while (true) { pow = pow(old + 1, power); if (pow == n) { return old + 1; } else { if (pow < n) { old++; } else { new = old + 1; for (k = 0; k < 20; k++) { mid = (old + new) / 2; pow = pow(mid, power); if (n == pow) { return mid; } else if (n < pow) { new = mid; } else { old = mid; } } return (old + new) / 2; } } } }