Write a C++ program that checks whether a date entered in the form of: month day year is a valid date. A valid date should satisfy the following conditions: Its year value should be between 0 and 2019 inclusive. The month value should be between 1 and 12 inclusive. The day value should be between 1 and 30 if the month is April, June, September, or November, and between 1 and 31 if the month is January, March, May, July, August, October, or December. If it is a leap year, the day value should be between 1 and 29, and if it is not a leap year, the day value should be between 1 and 28.
A leap year is determined as follows: If the year is not at the end of a century, for example, 1994, it needs to be a multiple of 4 in order to be a leap year. If the year is at the end of a century, for example, 2000, it needs to be a multiple of 400 in order to be a leap year.