У меня есть несколько элементов управления (диаграммы в этом случае), которые были определены во время выполнения. Я хотел бы поместить их в сетку с соответствующим количеством строк и столбцов. Например,
- 4 элемента = 2 x 2
- 8 элементов = 4 x 2
- 9 элементов = 3 x 3
- 20 предметов = 5 x 4
- 11 items = 4 x 3 (мне не нужна пустая ячейка)
Извините, у меня нет никакого кода, чтобы показывать мои попытки. Я начал играть с определения, является ли квадратный корень целым числом, если число равномерно делится на 2 и т.д., И я понял, что не знаю, как атаковать эту проблему. Но об этом я и думаю:
- Если квадратный корень является целым числом, используйте квадратный корень для количества строк и столбцов (там нет проблем)
- Если нет, убедитесь, что номер четный (добавьте его, если вам нужно - проблем нет)
- Найдите наивысшие два целых числа, которые производят число. например Если у меня есть 20 элементов управления, сетка должна быть 5 x 4, а не 10 x 2 (не совсем уверен, лучший способ для этого).
Я был бы признателен, если бы кто-то мог указать мне в правильном направлении - или предложить другой алгоритм, если я уйду с базы.