В стремлении изучить C# в практическом порядке, я начал работать над этими заданиями, которые я нашел в Интернете ...
http://www1.cs.columbia.edu/~lok/csharp ... ments.html> Я усугубляю упражнение 1, вопрос 3. В этом случае проверьте, является ли дата после сегодняшнего дня, и предоставьте «недействительное» сообщение, если true. < /P>
Мой код в настоящее время выглядит как ниже. Я чувствую, что есть логика, но что -то связанное с областью объема не позволит ей скомпилироваться - пользовательская дата, кажется, кажется недоступным вне цикла.//Set today's date as a variable
DateTime todayDate = DateTime.Today;
DateTime userBirthdate;
//Ask user for birth date
Console.Write("Please enter your date of birth (dd/mm/yy): ");
//Validate the input and set as a variable
bool inputValid = false;
while (inputValid != true)
{
if (DateTime.Parse(Console.ReadLine()) > todayDate)
{
Console.Write("Invalid Date. Please enter your date of birth (dd/mm/yy): ");
}
else
{
userBirthdate = DateTime.Parse(Console.ReadLine());
Console.WriteLine(userBirthdate);
inputValid = true;
}
}
//Calculate user age
int userAge = todayDate.Year - userBirthdate.Year;
if (userBirthdate > todayDate.AddYears(-userAge)) userAge--;
//Output
Console.WriteLine("You are {0} years old!", userAge);
Console.ReadLine();
Подробнее здесь: https://stackoverflow.com/questions/241 ... in-c-sharp