Задача: Решите экспоненциальное уравнение

Создайте функцию, которая принимает числа a и b и находит недостающую экспоненту x так, чтобы a при возведении в степень x было равно b. То есть мы ищем, в какую степень нужно возвести a, чтобы получить b.

Пример:

solve_for_exp(4, 1024) ➞ 5

solve_for_exp(2, 1024) ➞ 10

solve_for_exp(9, 3486784401) ➞ 10

Варианты решений:

from math import log
def solve_for_exp(a, b):
	return round(log(b,a))
def solve_for_exp(a, b):
	cnt = 0
	while b != a:
		b = b / a
		cnt += 1
	return cnt + 1
def solve_for_exp(a, b):
	power = 0
	while True:
		if pow(a,power) == b:
			return power
		power += 1
def solve_for_exp(a, b):
	x = 1
	while a ** x != b:
		x += 1
	return x

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *