Шаг 291.
Язык программирования C#. Начала.
Немного о разном. Работа с датой и временем. Пример 2

    На этом шаге мы рассмотрим еще один пример использования дат.

    Еще один небольшой пример, связанный с использованием дат, представлен в примере ниже. В этой простой программе для указанного диапазона лет вычисляются дни, когда 13-й день месяца попадает на пятницу.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace pr291_1
{
    // Главный класс:
    class Program
    {
        // Главный метод: 
        static void Main()
        {
            // Годы начала и окончания поиска и день месяца: 
            int start = 2015, end = 2022, day = 13;
            // Переменная для записи даты:
            DateTime date;
            Console.WriteLine("Пятница:");
            // Перебираются годы:
            for(int year = start; year <= end; year++) {
                // Перебираются месяцы:
                for(int month = 1; month <= 12; month++) {
                    // Дата:
                    date = new DateTime(year, month, day);
                    // Если это пятница: 
                    if(date.DayOfWeek == DayOfWeek.Friday) {
                        // Отображение даты:
                        Console.WriteLine(date.ToString("dd MMMM yyyy года"));
                    }
                }
            }
            // Задержка:
            Console.ReadLine();
        }
    }
}
Архив проекта можно взять здесь.

    Результат выполнения программы представлен ниже:


Рис.1. Результат работы приложения

    В целочисленную переменную start записывается год, начиная с которого выполняется поиск (значение 2015), в переменную end записывается год окончания поиска (значение 2022), а в переменную day записывается номер дня в месяце (значение 13). Переменная date типа DateTime нужна для запоминания даты. В программе использованы вложенные конструкции цикла. Во внешнем цикле переменная year (год для даты) принимает значения от start до end включительно. Во внутренней конструкции цикла с помощью переменной month перебираются месяцы. Командой

  date = new DateTime(year, month, day);
создается экземпляр для даты. В условной конструкции проверяется условие date.DayOfWeek==DayOfWeek.Friday. Условие истинно, если дата, записанная в date, соответствует пятнице. Если так, то дата отображается в консольном окне.

    На следующем шаге мы рассмотрим работу с файлами.




Предыдущий шаг Содержание Следующий шаг