Составить программу в С # Замечание. При решении данных задач возможно использовать оператор switch или вложенные операторы if.Задача.С некоторой даты по настоящий день прошло m месяцев, найти неизвестную дату.

2 Дек 2019 в 19:44
199 +1
0
Ответы
1

using System;

namespace UnknownDate
{
class Program
{
static void Main(string[] args)
{
// Ввод данных
Console.WriteLine("Введите текущую дату (день, месяц, год):");
int day = Convert.ToInt32(Console.ReadLine());
int month = Convert.ToInt32(Console.ReadLine());
int year = Convert.ToInt32(Console.ReadLine());

Console.WriteLine("Введите количество прошедших месяцев:");
int m = Convert.ToInt32(Console.ReadLine());
// Нахождение неизвестной даты
int totalMonths = month + m;
int newMonth = totalMonths % 12;
int newYear = year + totalMonths / 12;
int daysInNewMonth = DaysInMonth(newMonth, newYear);
// Вывод результата
Console.WriteLine("Неизвестная дата: {0}.{1}.{2}", Math.Min(day, daysInNewMonth), newMonth, newYear);
}
// Функция для определения количества дней в месяце
static int DaysInMonth(int month, int year)
{
switch (month)
{
case 2:
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
return 29; // Високосный год
else
return 28;
case 4:
case 6:
case 9:
case 11:
return 30;
default:
return 31;
}
}
}

}

19 Апр 2024 в 00:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир