Работа со структурами - C# (182926)
Формулировка задачи:
Всем доброго дня!
имеется вопрос по работе со структурами на C#. Вот условие задания: Второй файл, остальной код для работы:
Вопрос вот в чём. Когда запускаю на текущем этапе программу при работе с массивом в файле кода появляется ошибка, ссылающаяся на нулевой объект:
Как правильно его объявить ? Может массив я не правильно создал ?
Описать тип TDate — структура с полями целого типа Day (день), Month (месяц) и Year (год). Протестировать является ли дата правильной. Создать массив структур (не более чем для пяти дат). Вывести на экран те даты, у которых месяца являются зимними, в противном случае вывести сообщение «Нет дат, у которых месяца являются зимними».
В результате есть часть кода. Первый - это структура TDate:using System; namespace Одномерные_массивы_и_структуры { internal class TDate { public int day, month, year; public Byte day1, month1, year1; public void Show() { Console.WriteLine("Введите дату"); day = Int32.Parse(Console.ReadLine()); month = Int32.Parse(Console.ReadLine()); year = Int32.Parse(Console.ReadLine()); if ((day > 0 && day <= 31) && (month > 0 && month <= 12) && (year > 0)) { Console.WriteLine("Вы ввели следующую дату: " + day + ". " + month + ". " + year); } { Console.WriteLine("Дата введена не правильно. Повторите попытку"); } } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Одномерные_массивы_и_структуры { class odnom_massiv { static void Main(string[] args) { TDate data = new TDate(); int day, month, year; data.Show(); Console.WriteLine("Введите 5 дат"); //int n = Byte.Parse(Console.ReadLine()); TDate[] mas = new TDate[5]; for (int i = 0; i < 5; i++) { Console.WriteLine("Введите " + i + "-ю дату"); Console.WriteLine("День"); mas[i].day1 = Byte.Parse(Console.ReadLine()); Console.WriteLine("Месяц"); mas[i].month1 = Byte.Parse(Console.ReadLine()); Console.WriteLine("Год"); mas[i].year1 = Byte.Parse(Console.ReadLine()); }
Решение задачи: «Работа со структурами»
textual
Листинг программы
for (int i = 0; i < 5; i++) { mas[i] = new TDate(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д