Разработать приложение, определяющее дату в формате «число месяц» по номеру дня в году - C#

Узнай цену своей работы

Формулировка задачи:

Разработать приложение, определяющее дату в формате «число месяц» по номеру дня в году, вводимому с консоли. Приложение дополнительно должно запрашивать с консоли информацию о номере года для определения того, является ли год високосным. Не использовать тип DateTime. Предусмотреть проверку номера дня в году на попадание в диапазон от 1 до 365 или от 1 до 366 для високосных годов. Результат выводить на консоль. помогите с решением :-( !!!

Решение задачи: «Разработать приложение, определяющее дату в формате «число месяц» по номеру дня в году»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Text;
 
namespace proga
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Please, enter your day (1-365/366): ") ;
            int dayNumber = Convert.ToInt32(Console.ReadLine()) ;
            Console.Write("Please, enter your year: ") ;
            int year = Convert.ToInt32(Console.ReadLine()) ;
            bool leapYear = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0) ;
            if (dayNumber >= 1 && dayNumber <= ((leapYear == true) ? 366 : 365)) 
            {
                int[] monthsLength = { 31, (leapYear == true) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } ;
                int sum = 0 ;
                int i = 0 ;
                while (sum < dayNumber) sum += monthsLength[i++] ;
                sum -= monthsLength[--i] ;
                sum = dayNumber - sum ;
                Console.WriteLine("{0} day in {1} year is {2} day of {3} month", dayNumber, year, sum, i+1) ;
            }
            else Console.WriteLine("Range error!") ;
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.8 из 5
Похожие ответы