コード例 #1
0
        static void Main(string[] args)
        {
            DateTimeOffset time = DateTimeOffset.MinValue;

            while (time == DateTimeOffset.MinValue)
            {
                try
                {
                    Console.WriteLine("Enter a time to see in Berlin Clock Format. Input format: HH:MM:SS");
                    time = DateTimeOffset.Parse(Console.ReadLine());
                }
                catch
                {
                    Console.WriteLine("Error parsing the input string. Format should be HH:MM:SS");
                }
            }
            var berlinTime = new BerlinClockTime(time);

            Console.WriteLine(berlinTime.ToString("F", new BerlinClockTimeFormatter()));
            Console.ReadKey();
        }
コード例 #2
0
 StringBuilder AppendQuarters(StringBuilder sb, BerlinClockTime clock)
 {
     sb.AppendLine(Enumerable.Repeat("YYR", clock.Quarters).Concat(Enumerable.Repeat("Y", clock.FiveMinutes)).TryAggregate().PadRight(11, 'O'));
     return(sb);
 }
コード例 #3
0
 StringBuilder AppendHours(StringBuilder sb, BerlinClockTime clock)
 {
     sb.AppendLine(Enumerable.Repeat("R", clock.NumberOfFiveHourSignals).TryAggregate().PadRight(4, 'O'));
     sb.AppendLine(Enumerable.Repeat("R", clock.NumberOfOneHourSignals).TryAggregate().PadRight(4, 'O'));
     return(sb);
 }
コード例 #4
0
 StringBuilder AppendSeconds(StringBuilder sb, BerlinClockTime clock)
 {
     sb.AppendLine(clock.IsTwoSecondClockBlinking ? "Y" : "O");
     return(sb);
 }
コード例 #5
0
 StringBuilder AppendSingleMinutes(StringBuilder sb, BerlinClockTime clock)
 {
     sb.AppendLine(Enumerable.Repeat("Y", clock.SingleMinutes).TryAggregate().PadRight(4, 'O'));
     return(sb);
 }