Можно ли как-то трансформировать код с языка С на язык С#?

код находит все палиндромы, которые показывает часы в течение суток. Часы показывают время в 24-часовом формате.

Результат программы таков: 00:00 01:10 02:20 03:30 04:40 05:50 10:01 11:11 12:21 13:31 14:41 15:51 20:02 21:12 22:22 23:32

int main()
{
    int i;
    char h[3] = {'0', '0', 0};

    for(i = 0 ; i < 24 ; i++)
    {
        if((i % 10) < 6)
        {
            snprintf(h, 3, "%02d", i);
            printf("%s:%c%c\n", h, h[1], h[0]);
        }
    }

    return 0;
} 

Или может кто-то подсказать как переписать эту часть?

char h[3] = {'0', '0', 0};

snprintf(h, 3, "%02d", i);
printf("%s:%c%c\n", h, h[1], h[0]);

Ответы (1 шт):

Автор решения: aepot

Несмотря на то, что языки схожие, мне проще было написать код с нуля, чем пытаться подражать исходнику.

код находит все палиндромы, которые показывает часы в течение суток. Часы показывают время в 24-часовом формате.

Так?

static void Main(string[] args)
{
    for (int i = 0; i < 24; i++)
    {
        if (i % 10 < 6)
        {
            string h = i.ToString("00");
            Console.WriteLine($"{h}:{h[1]}{h[0]}");
        }
    }
    Console.ReadKey();
}

Вывод

00:00
01:10
02:20
03:30
04:40
05:50
10:01
11:11
12:21
13:31
14:41
15:51
20:02
21:12
22:22
23:32

На будущее, пишите в вопросе максимум деталей, чтобы не приходилось выпытывать из вас подробности.

В плане C#, то же решение например могло бы выглядеть вот так

static void Main(string[] args)
{
    Enumerable.Range(0, 24)
        .Where(i => i % 10 < 6)
        .Select(i => i.ToString("00"))
        .Select(h => $"{h}:{h[1]}{h[0]}")
        .ToList()
        .ForEach(h => Console.WriteLine(h));

    Console.ReadKey();
}
→ Ссылка