Работа со структурами - C# (182695)
Формулировка задачи:
Есть задание следующего типа: И часть кода в основном файле
Но всё не могу понять, как в основном файле выполнить проверку введённых дат на условие из TDate ? Как правильно оформлять if ?
Описать тип TDate — структура с полями целого типа Day (день), Month (месяц) и Year (год). Протестировать является ли дата правильной. Создать массив структур (не более чем для пяти дат). Вывести на экран те даты, у которых месяца являются зимними, в противном случае вывести сообщение «Нет дат, у которых месяца являются зимними».
Создал структуру TDate для проверкиnamespace Одномерные_массивы_и_структуры { struct TDate { public int day, mes, god; public void Show() { Console.WriteLine(day + ", " + mes + ", " + god); } public bool Wisokosh() { return (god % 4 == 0) && !(god % 100 == 0 && god % 400 != 0); } public bool Prawilnia() { bool rez = true; if (mes < 0 || mes > 12) rez = false; else { switch (mes) { case 1: { rez = (day >= 1 && day <= 31); break; } case 2: { if (Wisokosh() == true) { rez = (day >= 1 && day <= 29); break; } else { rez = (day >= 1 && day <= 28); break; } } case 3: { rez = (day >= 1 && day <= 31); break; } case 4: { rez = (day >= 1 && day <= 30); break; } case 5: { rez = (day >= 1 && day <= 31); break; } case 6: { rez = (day >= 1 && day <= 30); break; } case 7: { rez = (day >= 1 && day <= 31); break; } case 8: { rez = (day >= 1 && day <= 31); break; } case 9: { rez = (day >= 1 && day <= 30); break; } case 10: { rez = (day >= 1 && day <= 31); break; } case 11: { rez = (day >= 1 && day <= 30); break; } case 12: { rez = (day >= 1 && day <= 31); break; } } } return rez; } } }
TDate data = new TDate(); int i; data.day = 0; data.mes = 0; data.god = 0; data.Show(); Console.WriteLine("Введите 5 дат"); TDate[] mas = new TDate[5]; for (i = 0; i < 5; i++) { Console.WriteLine("День"); mas[i].day = Int32.Parse(Console.ReadLine()); Console.WriteLine("Месяц"); mas[i].mes = Int32.Parse(Console.ReadLine()); Console.WriteLine("Год"); mas[i].god = Int32.Parse(Console.ReadLine()); } for (i = 0; i < 5; i++) { mas[i].Show(); }
if (data.Prawilnia()) { Console.WriteLine("ДА!!!!!!"); } else { Console.WriteLine("ddd"); }
Решение задачи: «Работа со структурами»
textual
Листинг программы
TDate data = new TDate(); int i; data.day = 0; data.mes = 0; data.god = 0; data.Show(); Console.WriteLine("Введите 5 дат"); TDate[] mas = new TDate[5]; for (i = 0; i < 5; i++) { Console.WriteLine("День"); mas[i].day = Int32.Parse(Console.ReadLine()); Console.WriteLine("Месяц"); mas[i].mes = Int32.Parse(Console.ReadLine()); Console.WriteLine("Год"); mas[i].god = Int32.Parse(Console.ReadLine()); } for (i = 0; i < 5; i++) { mas[i].Show(); if (mas[i].Prawilnia()) Console.WriteLine("ДА!!!!!!"); else Console.WriteLine("нет"); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д