Напишите программу, решающую задачу подсчета соответствующих количеств — C#(Си шарп)

Таблицей умножения назовем таблицу размера n строк на m столбцов, в которой на пересечении i-ой строки и j-ого столбца стоит число i · j (строки и столбцы нумеруются с единицы). В одной из математических школ было решено провести педагогический эксперимент. Для того, чтобы ученикам было проще запоминать таблицу умножения, некоторые числа в ней будут покрашены в красный, некоторые — в синий, а некоторые — в зеленый цвет (оставшиеся числа будут черными). Процесс покраски чисел можно условно разбить на четыре этапа. На первом этапе все числа красятся в черный цвет. На втором — все четные числа красятся в красный цвет, на третьем — все числа, делящиеся на 3, красятся в зеленый цвет, на четвертом — все числа, делящиеся на 5, красятся в синий цвет. Директор школы хочет знать, какое количество картриджей для принтеров необходимо закупить для печати таблиц. Поэтому ему необходима информация о том, сколько чисел какого цвета будет в одной раскрашенной таблице умножения n на m. Напишите программу, решающую задачу подсчета соответствующих количеств

Пример ввода:
10 10
Пример вывода:
RED : 21
GREEN : 39
BLUE : 36
BLACK : 4

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System;
using System.Linq;
  
var values = Console.ReadLine().Split();
var rows = int.Parse(values[0]);
var columns = int.Parse(values[1]);
  
var colors = Enum.GetValues<Color>().ToDictionary(color => color, _ => 0);
for (var y = 1; y <= rows; y++)
{
    for (var x = 1; x <= columns; x++)
    {
        var product = y * x;
        Color color = GetColor(product);
        colors[color]++;
    }
}
  
foreach (var (color, count) in colors)
{
    Console.WriteLine($"{color}: {count}");
}
  
static Color GetColor(int product)
{
    var color = Color.Black;
    if (product % 2 == 0)
    {
        color = Color.Red;
    }
  
    if (product % 3 == 0)
    {
        color = Color.Green;
    }
  
    if (product % 5 == 0)
    {
        color = Color.Blue;
    }
  
    return color;
}
  
internal enum Color { Black, Red, Green, Blue }

Leave a Comment