Skip to content

Instantly share code, notes, and snippets.

@umair-khanzada
Created September 15, 2019 16:51
Show Gist options
  • Select an option

  • Save umair-khanzada/b620ef58cff37ed98e129d118dae0031 to your computer and use it in GitHub Desktop.

Select an option

Save umair-khanzada/b620ef58cff37ed98e129d118dae0031 to your computer and use it in GitHub Desktop.
Write a function, `persistence`, that takes in a positive parameter num and returns its multiplicative persistence, which is the number of times you must multiply the digits in num until you reach a single digit.
function persistence(num, count = 0){
return num > 9 ? persistence(eval(`${num}`.split('').join('*')), count+1) : count;
}
persistence(39) === 3 // because 3*9 = 27, 2*7 = 14, 1*4=4
// and 4 has only one digit
persistence(999) === 4 // because 9*9*9 = 729, 7*2*9 = 126,
// 1*2*6 = 12, and finally 1*2 = 2
persistence(4) === 0 // because 4 is already a one-digit number
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment