A veces participo en otros foros, más que todo por curiosidad y hace poco plantearon este problema, lo curioso es que en el mismo foro está el mismo problema desde el 2017 y nadie dio una respuesta:
Empiezas con 1€ y, con cada movimiento, puedes o bien doblar tu dinero o sumar otro euro. ¿Cuál es el mínimo número de movimientos para obtener exactamente 200€?
hay que hacer una función, bueno, no la publiqué en ese foro porque me molesta que pidan todo servido y no hacen ni un intento de solución. Lo hago acá porque quizá le sirva a quién este aprendiendo en algún curso. Es muy fácil y solo cuestión de lógica simple, así que es solo para novatos.
claro que hay otras formas pero voy por la que cualquiera entienda con solo mirar.
Saludos
Empiezas con 1€ y, con cada movimiento, puedes o bien doblar tu dinero o sumar otro euro. ¿Cuál es el mínimo número de movimientos para obtener exactamente 200€?
hay que hacer una función, bueno, no la publiqué en ese foro porque me molesta que pidan todo servido y no hacen ni un intento de solución. Lo hago acá porque quizá le sirva a quién este aprendiendo en algún curso. Es muy fácil y solo cuestión de lógica simple, así que es solo para novatos.
Código (python) [Seleccionar]
def minmov(valor):
contador = 0
while valor > 1:
if valor % 2 == 0:
valor= valor /2
contador += 1
else:
valor = valor -1
contador += 1
return contador
print(minmov(200))
claro que hay otras formas pero voy por la que cualquiera entienda con solo mirar.
Saludos