Bakhtina Sofya 24af5735b4 2st commit | 8 hónapja | |
---|---|---|
.gitignore.txt | 9 hónapja | |
README.md | 8 hónapja |
Индивидуальное задание №4
using System.Numerics;
BigInteger chislo = BigInteger.Pow(2, 64) - 1;
string chisloString = chislo.ToString();
Console.WriteLine("rezultat: " + chisloString);
Console.Write("Введите дату в формате ДД.ММ.ГГГГ: ");
string input = Console.ReadLine();
DateTime date;
if (DateTime.TryParseExact(input, "dd.MM.yyyy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out date))
{
Console.WriteLine("Введенная строка является валидной датой ");
}
else
{
Console.WriteLine("Введенная строка не является валидной датой.");
}
Console.WriteLine("Введите первую дату:");
DateTime Date1 = DateTime.Parse(Console.ReadLine());
Console.WriteLine("Введите вторую дату:");
DateTime Date2 = DateTime.Parse(Console.ReadLine());
TimeSpan raznica = Date2 - Date1;
int daysRaznica = raznica.Days;
Console.WriteLine("Количество дней между двумя датами: " + daysRaznica);
3.
Console.WriteLine("Введите первую дату и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС:");
DateTime data1 = DateTime.Parse(Console.ReadLine());
Console.WriteLine("Введите вторую дату и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС:");
DateTime data2 = DateTime.Parse(Console.ReadLine());
TimeSpan raz = data2 - data1;
double razz = Math.Abs(raz.TotalHours);
Console.WriteLine("Количество часов между датами: " + razz);
4.
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);
}
}
5.
class Program
{
static void Main()
{
Console.WriteLine("Введите год");
int year = int.Parse(Console.ReadLine());
DateTime day = new DateTime(year, 1, 1).AddDays(255);
Console.WriteLine($"День программиста в {year} году: {day.ToString("dd.MM.yyyy")} ({day.DayOfWeek})");
}
}
6.
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");
}
}
7.
DateTime examen = new DateTime(2024, 7, 20);
Console.WriteLine("Введите дату:");
DateTime date = DateTime.Parse(Console.ReadLine());
if (date < examen)
{
TimeSpan raz = examen - date;
int daysRaz = Math.Abs((int)raz.TotalDays);
Console.WriteLine($"Осталость {daysRaz} дней");
}
else if (date > examen)
{
TimeSpan raznica = date - examen;
int daysRaznica = Math.Abs((int) raznica.TotalDays);
Console.WriteLine($"Прошло {daysRaznica} дней");
}
else
{
Console.WriteLine("Экзамен сегодня!");
}
8.
Console.WriteLine("Введите дату в формате ДД.ММ.ГГГГ: ");
DateTime date = DateTime.Parse(Console.ReadLine());
DateTime tomorrow = date.AddDays(1);
Console.WriteLine("Завтрашняя дата: " + tomorrow.ToString("dd.MM.yyyy"));
9.
int day = 1;
int month = 9;
DateTime today = DateTime.Today;
DateTime dr = new DateTime(today.Year, month, day);
if (today < dr)
{
TimeSpan raz = dr - today;
int daysRaz = Math.Abs((int)raz.TotalDays);
Console.WriteLine($"Осталость {daysRaz} дней");
}
else if (today > dr)
{
TimeSpan raznica = today - dr;
int daysRaznica = Math.Abs((int)raznica.TotalDays);
Console.WriteLine($"Прошло {daysRaznica} дней");
}
else
{
Console.WriteLine("Поздравляю с днем рождения!");
}
10.
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("Неккоректный формат времени!");
}
11.
List<DateTime> Dates = new List<DateTime>
{
new DateTime(2008, 11,15),
new DateTime(2007,2,25),
new DateTime(2015,5,22),
new DateTime(2022,7,30),
new DateTime(2020,9,5),
new DateTime(2021,9,6),
new DateTime(2003,8,14),
new DateTime(2024,3,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());
12.
using System.Globalization;
List<DateTime> birthDates = new List<DateTime>
{
new DateTime(1845, 11, 8),
new DateTime(2022, 9, 25),
new DateTime(2020, 3, 15),
new DateTime(2001, 10, 1),
new DateTime(2024, 3, 29)
};
var birthdaysByMonth = birthDates.GroupBy(d => d.Month)
.OrderBy(g => g.Key)
.Select(g => new { Month = g.Key, Count = g.Count() });
foreach (var item in birthdaysByMonth)
{
Console.WriteLine($"{CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(item.Month)}: {item.Count}");
}
13.
string[] date = { "05.12.2014", "12.03.2022", "25.08.2022", "14.03.2024", "18.05.2021", "30.03.2006" };
var monthFrequency = date.Select(date => DateTime.ParseExact(date, "dd.MM.yyyy", null).ToString("MM"))
.GroupBy(month => month)
.Select(group => new { Month = group.Key, Count = group.Count() })
.OrderByDescending(x => x.Count);
var mostCommonMonth = monthFrequency.First();
Console.WriteLine($"Самый популярный месяц: {mostCommonMonth.Month}. Количество дат в этом месяце: {mostCommonMonth.Count}");
14.
int years1 = 10;
int count1 = 0;
int count2 = 0;
for (int year = 1; year <= years1; year++)
{
for (int month = 1; month <= 12; month++)
{
DateTime date1 = new DateTime(year, month, 13);
if (date1.DayOfWeek == DayOfWeek.Friday)
{
count1++;
}
count2++;
}
}
Console.WriteLine("Вероятности выпадения 13 числа каждого месяца на:");
Console.WriteLine("Понедельник: " + (double)CountOfThirteenths(DayOfWeek.Monday) / count2);
Console.WriteLine("Вторник: " + (double)CountOfThirteenths(DayOfWeek.Tuesday) / count2);
Console.WriteLine("Среда: " + (double)CountOfThirteenths(DayOfWeek.Wednesday) / count2);
Console.WriteLine("Четверг: " + (double)CountOfThirteenths(DayOfWeek.Thursday) / count2);
Console.WriteLine("Пятницу: " + (double)count1 / count2);
Console.WriteLine("Субботу: " + (double)CountOfThirteenths(DayOfWeek.Saturday) / count2);
Console.WriteLine("Воскресенье: " + (double)CountOfThirteenths(DayOfWeek.Sunday) / count2);
static int CountOfThirteenths(DayOfWeek day)
{
int count3 = 0;
for (int year = 1; year <= 10; year++)
{
for (int month = 1; month <= 12; month++)
{
DateTime date1 = new DateTime(year, month, 13);
if (date1.DayOfWeek == day)
{
count3++;
}
}
}
return count3;
}
15.
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);
}
}
16.
using System;
class Program
{
static void Main()
{
int year = 2024;
int countWeekendDays = 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)
{
countWeekendDays++;
}
}
}
Console.WriteLine("Количество выходных дней в году " + year + ": " + countWeekendDays);
}
}