


'''simple docstring'''

def __snake_case					(      UpperCAmelCase_						:						float		):
 return 10 - x * x





def __snake_case					(      UpperCAmelCase_						:						float					,				UpperCAmelCase_						:						float		):
 # Bolzano theory in order to find if there is a root between a and b
 if equation(UpperCAmelCase_		) * equation(UpperCAmelCase_		) >= 0:
  raise ValueError("Wrong space!"		)

 lowerCamelCase_      =  a
 while (b - a) >= 0.01:
  # Find middle point
  lowerCamelCase_      =  (a + b) / 2
  # Check if middle point is root
  if equation(UpperCAmelCase_		) == 0.0:
   break
  # Decide the side to repeat the steps
  if equation(UpperCAmelCase_		) * equation(UpperCAmelCase_		) < 0:
   lowerCamelCase_      =  c
  else:
   lowerCamelCase_      =  c
 return c


if __name__ == "__main__":
     import doctest

     doctest.testmod()

     print(bisection(-2, 5))
     print(bisection(0, 6))










def 		lowerCAmelCase_    (  __UpperCAmelCase:			int      )      ->	int:
    if not isinstance(__UpperCAmelCase		,   __UpperCAmelCase      ) or number < 0:
        raise ValueError('''Input must be a non-negative integer'''      )

    UpperCamelCase__							:				Optional[Any]          =      0
    while number:
        # This way we arrive at next set bit (next 1) instead of looping
        # through each bit and checking for 1s hence the
        # loop won't run 32 times it will only run the number of `1` times
        number &= number - 1
        count += 1
    return count


if __name__ == "__main__":
  import doctest

  doctest.testmod()

