




'''simple docstring'''





def 					UpperCamelCase_(     snake_case							:	int					):

							'''simple docstring'''






							if not isinstance(_snake_case							,    _snake_case					):
														raise ValueError("multiplicative_persistence() only accepts integral values"					)
							if num < 0:
														raise ValueError("multiplicative_persistence() does not accept negative values"					)

							snake_case_      =				0
							snake_case_      =				str(_snake_case					)

							while len(_snake_case					) != 1:
														snake_case_      =				[int(_snake_case					) for i in num_string]

														snake_case_      =				1
														for i in range(0							,    len(_snake_case					)					):
																					total *= numbers[i]

														snake_case_      =				str(_snake_case					)

														steps += 1
							return steps


def 					UpperCamelCase_(     snake_case							:	int					):

							'''simple docstring'''






							if not isinstance(_snake_case							,    _snake_case					):
														raise ValueError("additive_persistence() only accepts integral values"					)
							if num < 0:
														raise ValueError("additive_persistence() does not accept negative values"					)

							snake_case_      =				0
							snake_case_      =				str(_snake_case					)

							while len(_snake_case					) != 1:
														snake_case_      =				[int(_snake_case					) for i in num_string]

														snake_case_      =				0
														for i in range(0							,    len(_snake_case					)					):
																					total += numbers[i]

														snake_case_      =				str(_snake_case					)

														steps += 1
							return steps


if __name__ == "__main__":
		import doctest

		doctest.testmod()












'''simple docstring'''





def 					UpperCamelCase_(     snake_case							:	int							,    snake_case							:	int					):

							'''simple docstring'''






							while b:
														snake_case_ ,				snake_case_      =				b, a % b
							return a


def 					UpperCamelCase_(     snake_case							:	int							,    snake_case							:	int					):

							'''simple docstring'''






							return a if b == 0 else euclidean_gcd_recursive(snake_case							,    a % b					)


def 					UpperCamelCase_(     ):

							'''simple docstring'''






							print(f'euclidean_gcd(3, 5) = {euclidean_gcd(3							,    5					)}'					)
							print(f'euclidean_gcd(5, 3) = {euclidean_gcd(5							,    3					)}'					)
							print(f'euclidean_gcd(1, 3) = {euclidean_gcd(1							,    3					)}'					)
							print(f'euclidean_gcd(3, 6) = {euclidean_gcd(3							,    6					)}'					)
							print(f'euclidean_gcd(6, 3) = {euclidean_gcd(6							,    3					)}'					)

							print(f'euclidean_gcd_recursive(3, 5) = {euclidean_gcd_recursive(3							,    5					)}'					)
							print(f'euclidean_gcd_recursive(5, 3) = {euclidean_gcd_recursive(5							,    3					)}'					)
							print(f'euclidean_gcd_recursive(1, 3) = {euclidean_gcd_recursive(1							,    3					)}'					)
							print(f'euclidean_gcd_recursive(3, 6) = {euclidean_gcd_recursive(3							,    6					)}'					)
							print(f'euclidean_gcd_recursive(6, 3) = {euclidean_gcd_recursive(6							,    3					)}'					)


if __name__ == "__main__":
		main()




