# лаба №5 ## задача 1 ``` Console.WriteLine("введите год рождения: "); int year1 = int.Parse(Console.ReadLine()); for (int year = 1900; year < 2000; year++) { for (int month = 1; month <= 12; month++) { for (int day = 1; day <= DateTime.DaysInMonth(year, month); day++) { DateTime date = new DateTime(year, month, day); int age = year1 - year; int sum1 = CalculateSumOfSquares(year) - (day * day); if (sum1 == age) { Console.WriteLine("дата рождения по свойству: " + date.ToShortDateString()); } } } } static int CalculateSumOfSquares(int year) { int sum = 0; foreach (char c in year.ToString()) { sum += int.Parse(c.ToString()) * int.Parse(c.ToString()); } return sum; } ``` ответ очень большой ## задача 2 ``` class Program { static void Main(string[] args) { Console.WriteLine("ввод буквенной строки: "); string originalString = Console.ReadLine(); string packedString = PackString(originalString); Console.WriteLine("запакованная строка: " + packedString); } static string PackString(string originalString) { if (string.IsNullOrEmpty(originalString)) { return ""; } string packed = ""; int count = 1; for (int i = 0; i < originalString.Length; i++) { if (i == originalString.Length - 1 || originalString[i] != originalString[i + 1]) { packed += count.ToString() + originalString[i]; count = 1; } else { count++; } } return packed; } } ``` ответ: ввод буквенной строки: ddddxDDSS запакованная строка: 4d1x2D2S 33 задача3 ``` Console.WriteLine("загадайте число: "); int secret = Convert.ToInt16(Console.ReadLine()); Console.WriteLine("введите предполагаемое число: "); int guess = Convert.ToInt16(Console.ReadLine()); Console.WriteLine($"бычки: {CountBulls(secret, guess)}"); Console.WriteLine($"коровки: {CountCows(secret, guess)}"); static int CountBulls(int secret, int guess) { return secret.ToString().Zip(guess.ToString(), (s, g) => s == g ? 1 : 0).Sum(); } static int CountCows(int secret, int guess) { return secret.ToString().Intersect(guess.ToString()).Count() - CountBulls(secret, guess); } ``` ответ: загадайте число: 1111 введите предполагаемое число: 2222 бычки: 0 коровки: 0