Работа со структурами - 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("нет");
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д