Пример #1
0
        private void InitConfiguration()
        {
            const byte baseCellNumber = 4;
            const byte extentionCellNumber = 11;

            var baseRow = new StringBuilder();
            for (var i = 0; i < baseCellNumber; i++)
                baseRow.Append((char) LampColours.BaseColour);

            var extendedRow = new StringBuilder();
            for (var i = 0; i < extentionCellNumber; i++)
                extendedRow.Append((char) LampColours.BaseColour);

            _topLamp = LampColours.BaseColour;
            _firstTopRow = new StringBuilder(baseRow.ToString());
            _secondTopRow = new StringBuilder(baseRow.ToString());
            _firstBottomRow = extendedRow;
            _secondbottomRow = new StringBuilder(baseRow.ToString());
        }
Пример #2
0
        private void ChangeConfiguration(DigitalTime time)
        {
            const byte divisionBasis = 5;
            const byte divisionSeconds = 2;
            const byte divisionQuarters = 3;

            if (time.Seconds % divisionSeconds == 0)
                _topLamp = LampColours.YellowColour;

            for (var i = 0; i < time.Hours / divisionBasis; i++)
                _firstTopRow[i] = (char) LampColours.RedColour;

            for (var i = 0; i < time.Hours % divisionBasis; i++)
                _secondTopRow[i] = (char) LampColours.RedColour;

            for (var i = 0; i < time.Minutes / divisionBasis; i++)
                _firstBottomRow[i] = (i + 1) % divisionQuarters == 0 ? (char)LampColours.RedColour : (char)LampColours.YellowColour;

            for (var i = 0; i < time.Minutes % divisionBasis; i++)
                _secondbottomRow[i] = (char) LampColours.YellowColour;
        }