Реализовать класс календаря, используя для хранения дат массив - C#

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

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

Задача такая: реализовать класс календаря, используя для хранения дат массив. Разработать индексатор для класса.
class Kalendar
    {
        // поля
 
        int day;                              // номер дня месяца
        int month;                            // номер месяца
        int year;                             // номер года
        Kalendar[][] storage;                 // хранилище для дат года
// свойства   (свойства Day, Month, Year  {get;set;} существуют)
public Kalendar this [int i,int j]            // индексатор
        {
            get
            {
                return this.storage[i][j];   //(вот сюда выводит индекс находился вне границ массива)
            }
            set
            {
                this.storage[i][j] = value;
            }
        }
// конструктор 
public Kalendar(int Day, int Month, int Year)
        {
            day = Day;
            month = Month;
            year = Year;
            storage = new Kalendar[Month][];
        }
Дальше в Main не хочет заполнять массив. У меня уже мозги сломались.
class Program
    {
        static void Main(string[] args)
        {
Console.WriteLine("\tЗаполняем новый календарь значениями.");
            Console.Write("\tВведите день : ");
            int dayN = Convert.ToInt32(Console.ReadLine());
            Console.Write("\tВведите месяц : ");
            int monthN = Convert.ToInt32(Console.ReadLine());
            Console.Write("\tВведите год : ");
            int yearN = Convert.ToInt32(Console.ReadLine());
            int daysInMonth = DateTime.DaysInMonth(yearN, monthN);
            int monthInYear=12;
for (int i = 1; i <= monthInYear; i++)
                for (int j = 1; j <= daysInMonth;j++ )
                  {
                      Kalendar kalendar  = new Kalendar(j, i, yearN);
                      kalendar[monthN, dayN] = kalendar[i, j];
                  }
           
                    Console.ReadKey();
        }

Решение задачи: «Реализовать класс календаря, используя для хранения дат массив»

textual
Листинг программы
static void Main(string[] args)
        {
            Dates dat = new Dates(1990, 2013);
            Console.WriteLine(dat[1999][9][28]);
            Console.WriteLine(dat[1999, 9][28]);
            Console.WriteLine(dat[1999, 9, 28]);
            
            Console.Read();
        }

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


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

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

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