

'''simple docstring'''


import requests

lowerCAmelCase__						:       Dict										=						"""https://newsapi.org/v1/articles?source=bbc-news&sortBy=top&apiKey="""




def 	_a       (				__lowerCAmelCase		:      str     ):

  """simple docstring"""

  snake_case__						:       Union[str, Any]       						=  requests.get(_NEWS_API + bbc_news_api_key     ).json()
  # each article in the list is a dict
  for i, article in enumerate(bbc_news_page['''articles''']   ,							1     ):
    print(F"""{i}.) {article['title']}"""     )


if __name__ == "__main__":
     fetch_bbc_news(bbc_news_api_key="""<Your BBC News API key goes here>""")






'''simple docstring'''


def 	_a       (				__lowerCAmelCase		:      float   ,							__lowerCAmelCase		:      float   ,							__lowerCAmelCase		:      int     ):

		"""simple docstring"""

		if principal <= 0:
				raise Exception('''Principal borrowed must be > 0'''     )
		if rate_per_annum < 0:
				raise Exception('''Rate of interest must be >= 0'''     )
		if years_to_repay <= 0 or not isinstance(__lowerCAmelCase   ,							__lowerCAmelCase     ):
				raise Exception('''Years to repay must be an integer > 0'''     )

		# Yearly rate is divided by 12 to get monthly rate
		snake_case__						:       int       						=  rate_per_annum / 12

		# Years to repay is multiplied by 12 to get number of payments as payment is monthly
		snake_case__						:       Tuple       						=  years_to_repay * 12

		return (
		    principal
		    * rate_per_month
		    * (1 + rate_per_month) ** number_of_payments
		    / ((1 + rate_per_month) ** number_of_payments - 1)
		)


if __name__ == "__main__":
					import doctest

					doctest.testmod()



