индивидуальная задача14 ``` using System; class Program { static void Main() { double num = Math.Pow(2, 11213) - 1; string numStr = num.ToString(); if (numStr.Contains("99")) { Console.WriteLine("две идущие подряд девятки естть"); } else { Console.WriteLine("не встречаются"); } } } ``` ответ:не встречаются num1 ``` using System; class Program { static void Main(string[] args) { Console.WriteLine("Введите дату в формате ДД.ММ.ГГГГ:"); string dateString = Console.ReadLine(); if (DateTime.TryParseExact(dateString, "dd.mm.yyyy", null, System.Globalization.DateTimeStyles.None, out DateTime date)) { Console.WriteLine("является валидной"); } else { Console.WriteLine("не является валидной"); } } } ``` ответ: Введите дату в формате ДД.ММ.ГГГГ: 11.11.2001 является валидной; Введите дату в формате ДД.ММ.ГГГГ: 32.32.2024 не является валидной num2 ``` using System; class Program { static void Main() { Console.WriteLine("введите первую дату в формате ДД.ММ.ГГГГ:"); DateTime data1 = DateTime.Parse(Console.ReadLine()); Console.WriteLine("введите вторую дату в формате ДД.ММ.ГГГГ:"); DateTime data2 = DateTime.Parse(Console.ReadLine()); TimeSpan raz = data1 - data2; int normraz = Math.Abs((int)raz.TotalDays); Console.WriteLine("кол-во дней между датами: " + normraz); } } ``` ответ: введите первую дату в формате ДД.ММ.ГГГГ: 10.10.2005 введите вторую дату в формате ДД.ММ.ГГГГ: 01.08.2006 кол-во дней между датами: 295 num3 ``` class Program { static void Main() { Console.WriteLine("введите первую дату и время в формате ДД-ММ-ГГГГ ЧЧ:ММ:СС:"); DateTime data1 = DateTime.Parse(Console.ReadLine()); Console.WriteLine("введите вторую дату и время в формате ДД-ММ-ГГГГ ЧЧ:ММ:СС:"); DateTime data2 = DateTime.Parse(Console.ReadLine()); TimeSpan raz = data2 - data1; double normraz = Math.Abs(raz.TotalHours); Console.WriteLine("кол-во часов между датами: " + normraz); } } ``` ответ: введите первую дату и время в формате ДД-ММ-ГГГГ ЧЧ:ММ:СС: 10.10.2005 13:37:00 введите вторую дату и время в формате ДД-ММ-ГГГГ ЧЧ:ММ:СС: 01.08.2006 09:14:34 кол-во часов между датами: 7075,626111111111 num4 ``` class Program { static void Main() { Console.WriteLine("введите первую дату и время в формате ДД-ММ-ГГГГ ЧЧ:ММ:СС:"); DateTime data1 = DateTime.Parse(Console.ReadLine()); Console.WriteLine("введите вторую дату и время в формате ДД-ММ-ГГГГ ЧЧ:ММ:СС:"); DateTime data2 = DateTime.Parse(Console.ReadLine()); TimeSpan raz = data2 - data1; double normraz = Math.Abs(raz.TotalMinutes); Console.WriteLine("кол-во минут между датами: " + normraz); } } ``` ответ: введите первую дату и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС: 10.10.2005 10:10:10 введите вторую дату и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС: 01.08.2006 10:10:10 кол-во минут между датами: 424800 num5 ``` class Program { static void Main() { Console.WriteLine("введите год:"); int year = int.Parse(Console.ReadLine()); DateTime den = new DateTime(year, 1, 1).AddDays(255); Console.WriteLine($"день программиста в {year} году: {den.ToString("dd.mm.yyyy")} ({den.DayOfWeek})"); } } ``` ответ: введите год: 2005 день программиста в 2005 году: 14.00.2005 (Wednesday) num6 ``` class Program { static void Main() { Console.WriteLine("введите год"); int year = int.Parse(Console.ReadLine()); Console.WriteLine("введите число от 1 до 365"); int day = int.Parse(Console.ReadLine()); if (day >= 1 || day<=365) { DateTime den = new DateTime(year, 1, 1).AddDays(day-1); Console.WriteLine(($"в {year} году день {day} является: {den.ToString("dd.MM.yyyy")} ({den.DayOfWeek})")); } else { Console.WriteLine("введите число от 1 до 365"); } } } ``` jndtn: введите год: 2003 введите число от 1 до 365 13 в 2003 году день 13 является: 13.01.2003 (Monday) num7 ``` using System; Console.Write("введите дату: "); DateTime date = new DateTime(2024,4, 30); DateTime date1 = DateTime.Parse(Console.ReadLine()); if (date > date1) { TimeSpan difference = date - date1; int s = difference.Days; Console.WriteLine("осталось " + s + " дней до экзамена"); } else if (date < date1) { TimeSpan difference = date1 - date; int s = difference.Days; Console.WriteLine("прошло " + s + " дней от экзамена"); } else { Console.WriteLine("сегодня экзамен!"); } ``` ответ: введите дату: 2024.4.23 осталось 7 дней до экзамена num8 ``` using System; Console.Write("введите дату: "); DateTime date1 = DateTime.Parse(Console.ReadLine()); date1 = date1.AddDays(1); Console.WriteLine("завтра дата: " + date1.ToString("dd.mm.yyyy")); ``` ответ: введите дату: 10.10.2005 завтра будет: 11.10.2005 num9 ``` using System; class Program { static void Main() { Console.WriteLine("введите день и месяц рождения:"); string input = Console.ReadLine(); DateTime birthday; if (DateTime.TryParseExact(input, "dd.MM", null, System.Globalization.DateTimeStyles.None, out birthday)) { DateTime today = DateTime.Today; if (birthday.Day == today.Day && birthday.Month == today.Month) { Console.WriteLine("поздравляем с днем рождения! :з "); } else { TimeSpan difference = birthday.AddYears(today.Year - birthday.Year) - today; int daysUntilBirthday = (int)difference.TotalDays; if (daysUntilBirthday < 0) { difference = birthday.AddYears(today.Year - birthday.Year + 1) - today; daysUntilBirthday = (int)difference.TotalDays; } Console.WriteLine("до дня рождения осталось " + daysUntilBirthday + " дней"); } } } } ``` ответ: 10.10 до дня рождения осталось 220 дней num10 ``` using System; class Program { static void Main() { Console.Write("введите время: "); string time1 = Console.ReadLine(); if (TimeSpan.TryParse(time1, out TimeSpan time)) { int seconds = (time.Hours * 3600) + (time.Minutes * 60) + time.Seconds; Console.WriteLine("кол-во секунд, которые прошли с начала суток: " + seconds); } else { Console.WriteLine("неккоректный формат времени"); } } } ``` ответ: введите время: 0:24 кол-во секунд, которые прошли с начала суток: 1440 num11 ``` using System; class Program { static void Main() { List Dates = new List { new DateTime(2007, 7, 13), new DateTime(2005, 10, 10), new DateTime(2012, 5, 9), new DateTime(2021, 7, 12), new DateTime(2020, 9, 5), new DateTime(2021, 9, 6), new DateTime(2001, 6, 29), new DateTime(2023, 8, 1) }; DateTime today = DateTime.Today; DateTime date1 = Dates[0]; TimeSpan date2 = today - date1; foreach (DateTime date in Dates) { TimeSpan difference = today - date; if (Math.Abs(difference.Days) < Math.Abs(date2.Days)) { date2 = difference; date1 = date; } } Console.WriteLine("ближайшая дата: " + date1.ToShortDateString()); } } ``` ответ: ближайшая дата: 01.08.2023 Num12 ``` using System; class Program { static void Main() { List Dates = new List { new DateTime(1982, 3, 12), new DateTime(2021, 8, 11), new DateTime(2020, 9, 20), new DateTime(2006, 10, 15) }; DateTime date1 = GetNearestDate(Dates); Console.WriteLine($"ближайшая дата рождения: {date1:dd.mm.yyyy}"); static DateTime GetNearestDate(List dates) { DateTime today = DateTime.Today; dates.Sort((d1, d2) => Math.Abs((d1 - today).Days).CompareTo(Math.Abs((d2 - today).Days))); return dates[0]; } } } ``` ответ: ближайшая дата рождения: 11.08.2021 num13 ``` using System; class Program { static void Main() { string[] Dates = { "18.05.1887", "10.05.2005", "29.11.1913", "13.11.2000", "17.10.2008" }; Dictionary month1 = new Dictionary(); foreach (var date in Dates) { DateTime date1 = DateTime.ParseExact(date, "dd.mm.yyyy", null); string month = date1.ToString("mmmm"); if (month1.ContainsKey(month)) { month1[month]++; } else { month1.Add(month, 1); } } var popul = month1.Aggregate((l, r) => l.Value > r.Value ? l : r).Key; Console.WriteLine("cамый популярный месяц: " + popul); } } ``` ответ: cамый популярный месяц: 11 num14 ``` using System; class Program { static void Main() { int totalYears = 15; int fridayCount = 0; int totalCount = 0; for (int year = 1900; year < 1900 + totalYears; year++) { for (int month = 1; month <= 12; month++) { DateTime date = new DateTime(year, month, 13); if (date.DayOfWeek == DayOfWeek.Friday) { fridayCount++; } totalCount++; } } double fridayProbability = (double)fridayCount / totalCount; Console.WriteLine("вероятность выпадения 13 на пятницу: " + fridayProbability); for (DayOfWeek day = DayOfWeek.Sunday; day <= DayOfWeek.Saturday; day++) { int dayCount = 0; for (int year = 1900; year < 1900 + totalYears; year++) { for (int month = 1; month <= 12; month++) { DateTime date = new DateTime(year, month, 13); if (date.DayOfWeek == day) { dayCount++; } } } double dayProbability = (double)dayCount / totalCount; Console.WriteLine("вероятность выпадения 13 на " + day + ": " + dayProbability); } } } ``` ответ: вероятность выпадения 13 на пятницу: 0,15 вероятность выпадения 13 на Sunday: 0,1388888888888889 вероятность выпадения 13 на Monday: 0,14444444444444443 вероятность выпадения 13 на Tuesday: 0,1388888888888889 вероятность выпадения 13 на Wednesday: 0,14444444444444443 вероятность выпадения 13 на Thursday: 0,1388888888888889 вероятность выпадения 13 на Friday: 0,15 вероятность выпадения 13 на Saturday: 0,14444444444444443 num15 ``` using System; class Program { static void Main() { string wod = "00:00-01:00,00:30-02:30,01:30-03:00,02:00-04:00,02:30-05:00"; string[] schel = wod.Split(','); int[] time1 = new int[24]; foreach (string schedule in schel) { string[] times = schedule.Split('-'); string[] startTime = times[0].Split(':'); string[] endTime = times[1].Split(':'); int hour1 = int.Parse(startTime[0]); int hour2 = int.Parse(endTime[0]); for (int i = hour1; i < hour2; i++) { time1[i]++; } } int maxTime = 0; for (int i = 0; i < 24; i++) { if (time1[i] > maxTime) { maxTime = time1[i]; } } Console.WriteLine("максимальное количество касс работает с/по: "); for (int i = 0; i < 24; i++) { if (time1[i] == maxTime) { Console.WriteLine("{0:00}:00 - {1:00}:00", i, i + 1); } } } } ``` ответ: максимальное количество касс работает с/по: 02:00 - 03:00 num16 ``` using System; class Program { static void Main() { Console.WriteLine("введите нужный год:"); int year = int.Parse(Console.ReadLine()); int weekendCount = 0; for (int month = 1; month <= 12; month++) { for (int day = 1; day <= DateTime.DaysInMonth(year, month); day++) { DateTime date = new DateTime(year, month, day); if (date.DayOfWeek == DayOfWeek.Saturday || date.DayOfWeek == DayOfWeek.Sunday) { weekendCount++; } } } Console.WriteLine("кол-во выходных дней в " + year + " году: " + weekendCount); } } ``` ответ: введите нужный год: 2024 кол-во выходных дней в 2024 году: 104