Parte impar de un número
Enunciado
1 2 3 4 5 6 7 8 |
-- Todo número entero positivo n se puede escribir como 2^k*m, con m impar. -- Se dice que m es la parte impar de n. Por ejemplo, la parte impar de 40 -- es 5 porque 40 = 5*2^3. -- -- Definir la función -- parteImpar :: Integer -> Integer -- tal que (parteImpar n) es la parte impar de n. Por ejemplo, -- parteImpar 40 == 5 |
Soluciones
1 2 3 |
parteImpar :: Integer -> Integer parteImpar n | even n = parteImpar (n `div` 2) | otherwise = n |
Nota: he usado la definición de mayorExponente que hemos hecho en la relación 5.