"""simple docstring"""





def        a_  (   _lowerCAmelCase						:				Any     ,				_lowerCAmelCase						:				Tuple  ):





       '''simple docstring'''

       lowercase__    :	Optional[Any]     					=			(boundary[1] - boundary[0]) / steps
       lowercase__    :	Optional[int]     					=			boundary[0]
       lowercase__    :	int     					=			boundary[1]
       lowercase__    :	List[str]     					=			make_points(_lowerCAmelCase     ,				_lowerCAmelCase     ,				_lowerCAmelCase  )
       lowercase__    :	Optional[int]     					=			0.0
       y += (h / 2.0) * f(_lowerCAmelCase  )
       for i in x_i:
              # print(i)
              y += h * f(_lowerCAmelCase  )
       y += (h / 2.0) * f(_lowerCAmelCase  )
       return y





def        a_  (   _lowerCAmelCase						:				Optional[Any]     ,				_lowerCAmelCase						:				Tuple     ,				_lowerCAmelCase						:				Any  ):





       '''simple docstring'''

       lowercase__    :	List[Any]     					=			a + h
       while x < (b - h):
              yield x
              lowercase__    :	Tuple     					=			x + h





def        a_  (   _lowerCAmelCase						:				Union[str, Any]  ):  # enter your function here





       '''simple docstring'''

       lowercase__    :	Any     					=			(x - 0) * (x - 0)
       return y





def        a_  (   ):





       '''simple docstring'''

       lowercase__    :	Union[str, Any]     					=			0.0  # Lower bound of integration
       lowercase__    :	List[Any]     					=			1.0  # Upper bound of integration
       lowercase__    :	str     					=			1_0.0  # define number of steps or resolution
       lowercase__    :	Dict     					=			[a, b]  # define boundary of integration
       lowercase__    :	int     					=			method_a(_lowerCAmelCase     ,				_lowerCAmelCase  )
       print(f"""y = {y}"""  )


if __name__ == "__main__":
       main()


"""simple docstring"""





from collections.abc import Sequence





def        a_  (   _lowerCAmelCase						:				Sequence[float]     ,				_lowerCAmelCase						:				float  ):





       '''simple docstring'''

       return sum(c * (x**i) for i, c in enumerate(_lowerCAmelCase  )  )





def        a_  (   _lowerCAmelCase						:				Sequence[float]     ,				_lowerCAmelCase						:				float  ):





       '''simple docstring'''

       lowercase__    :	int     					=			0.0
       for coeff in reversed(_lowerCAmelCase  ):
              lowercase__    :	List[Any]     					=			result * x + coeff
       return result


if __name__ == "__main__":
       _UpperCamelCase     :		int											=					(0.0, 0.0, 5.0, 9.3, 7.0)
       _UpperCamelCase     :		Dict											=					1_0.0
       print(evaluate_poly(poly, x))
       print(horner(poly, x))

