Реализовать класс календаря, используя для хранения дат массив - C#
Формулировка задачи:
Задача такая: реализовать класс календаря, используя для хранения дат массив.
Разработать индексатор для класса.
Дальше в Main не хочет заполнять массив. У меня уже мозги сломались.
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][];
}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();
}