





from math import sqrt





def     _UpperCamelCase     (a__   :int       ):






							"""simple docstring"""





							if 1 < number < 4:
														# 2 and 3 are primes
														return True
							elif number < 2 or number % 2 == 0 or number % 3 == 0:
														# Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
														return False

							# All primes number are in format of 6k +/- 1
							for i in range(5   ,			int(sqrt(a__       ) + 1       )   ,			6       ):
														if number % i == 0 or number % (i + 2) == 0:
																					return False
							return True





def     _UpperCamelCase     (a__   :int = 1_0001       ):






							"""simple docstring"""





							UpperCamelCase__				     =			0
							UpperCamelCase__				     =			1
							while count != nth and number < 3:
														number += 1
														if is_prime(a__       ):
																					count += 1
							while count != nth:
														number += 2
														if is_prime(a__       ):
																					count += 1
							return number


if __name__ == "__main__":
					print(f"""{solution() = }""")











from sympy import diff, lambdify, symbols
from sympy.functions import *  # noqa: F403





def     _UpperCamelCase     (a__   :str   ,			a__   :complex   ,			a__   :str = "x"   ,			a__   :float = 10**-10   ,			a__   :int = 1   ,			):






							"""simple docstring"""





							UpperCamelCase__				     =			symbols(a__       )
							UpperCamelCase__				     =			lambdify(a__   ,			a__       )
							UpperCamelCase__				     =			lambdify(a__   ,			diff(a__   ,			a__       )       )

							UpperCamelCase__				     =			starting_point

							while True:
														if diff_function(a__       ) != 0:
																					UpperCamelCase__				     =			prev_guess - multiplicity * func(a__       ) / diff_function(
																					    a__       )
														else:
																					raise ZeroDivisionError("""Could not find root"""       ) from None

														# Precision is checked by comparing the difference of consecutive guesses
														if abs(next_guess - prev_guess       ) < precision:
																					return next_guess

														UpperCamelCase__				     =			next_guess


# Let's Execute
if __name__ == "__main__":
					# Find root of trigonometric function
					# Find value of pi
					print(f"""The root of sin(x) = 0 is {newton_raphson('sin(x)', 2)}""")

					# Find root of polynomial
					# Find fourth Root of 5
					print(f"""The root of x**4 - 5 = 0 is {newton_raphson('x**4 -5', 0.4 +5J)}""")

					# Find value of e
					print(
					    "The root of log(y) - 1 = 0 is ",
					    f"""{newton_raphson('log(y) - 1', 2, variable='y')}""",
					)

					# Exponential Roots
					print(
					    "The root of exp(x) - 1 = 0 is",
					    f"""{newton_raphson('exp(x) - 1', 10, precision=0.0_05)}""",
					)

					# Find root of cos(x)
					print(f"""The root of cos(x) = 0 is {newton_raphson('cos(x)', 0)}""")




