"""simple docstring"""






def 						SCREAMING_SNAKE_CASE					(  __UpperCAmelCase       )							->   int:
				if not isinstance(__UpperCAmelCase  ,					__UpperCAmelCase       ):
								raise ValueError("Input must be an integer"       )
				if input_num <= 0:
								raise ValueError("Input must be positive"       )
				return sum(
				    divisor for divisor in range(1  ,					input_num // 2 + 1       ) if input_num % divisor == 0       )


if __name__ == "__main__":
						import doctest

						doctest.testmod()





"""simple docstring"""






import math




def 						SCREAMING_SNAKE_CASE					(  __UpperCAmelCase  ,					__UpperCAmelCase       )							->   float:

				if initial_intensity < 0:
								raise ValueError("The value of intensity cannot be negative"       )
								# handling of negative values of initial intensity
				if angle < 0 or angle > 360:
								raise ValueError("In Malus Law, the angle is in the range 0-360 degrees"       )
								# handling of values out of allowed range
				return initial_intensity * (math.cos(math.radians(__UpperCAmelCase       )       ) ** 2)


if __name__ == "__main__":
						import doctest

						doctest.testmod(name='malus_law')




