VetCAD

Раскладка универсальная v2.1

    1 оценка

Евгений Грызунов

размещено: 05 Сентября 2019
обновлено: 06 Сентября 2019
Чисто математическая задача, которую не мог решить долгое время.

в версии 2.0 максимальное кол-во элементов увеличено до 10

Калькулятор выполнен без использования VBA (впрочем как и все остальные программы)

Критерием успешной раскладки является:
а) минимальный остаток
б) минимальное кол-во используемых элементов

Чем меньше задействовано элементов, тем выше вероятность успешной раскладки.

Постараюсь ответить на все Ваши вопросы, а так же готов выполнять подобные программы на заказ.

Евгений Грызунов
группа VK https://vk.com/excel_gryzunov
Раскладка универсальная v2.11
Раскладка универсальная v2.12
Раскладка универсальная v2.13

Комментарии

Комментарии могут оставлять только зарегистрированные участники
Авторизоваться
Комментарии 1-10 из 22
Alexmf , 05 сентября 2019 в 14:37
#1
Как всегда, на высоте! Спасибо!
CalcProg , 05 сентября 2019 в 14:44
#2
а в чём возникли трудности?
в своё время эту задачу решил за 1 вечер.

предлагаю следующим шагом решить задачу раскладки блоков стен подвалов с учетом пересечения стен, перевязки блоков и наличию отверстий в стенах. я сделал за 7 дней (старость не радость мозги заржавели по этому за 7 дней)
CalcProg , 05 сентября 2019 в 14:51
#3
длинну участка делишь на типоразмер 1 (наибольший). получаешь кол. типоразмера1. далее остаток от деления умножаешь на типоразмер1 и делишь на следующий типоразмер если типоразмер не превышает остаток. и так повторяешь в отношении остальных типоразмеров.
Евгений Грызунов , 05 сентября 2019 в 15:01
#4
Цитата:
Сообщение #3 от CalcProg

длинну участка делишь на типоразмер 1 (наибольший). получаешь кол. типоразмера1. далее остаток от деления умножаешь на типоразмер1 и делишь на следующий типоразмер если типоразмер не превышает остаток. и так повторяешь в отношении остальных типоразмеров.

хм. длина участка 2700. Блоки ФБС 2400, 1200, 900. Какой результат по Вашей методике будет?
правильный ответ 900х3
Евгений Грызунов , 05 сентября 2019 в 15:03
#5
Цитата:
Сообщение #2 от CalcProg

а в чём возникли трудности?
в своё время эту задачу решил за 1 вечер.

предлагаю следующим шагом решить задачу раскладки блоков стен подвалов с учетом пересечения стен, перевязки блоков и наличию отверстий в стенах. я сделал за 7 дней (старость не радость мозги заржавели по этому за 7 дней)

Поделитесь если не жалко)
CalcProg , 05 сентября 2019 в 15:13
#6
пример называется банкомат. выложен на Iforum.pro автор Nik_1. Алгоритм идентичный, только купюры заменяешь блоками. Написан на лазарусе, но выложен в другом разделе не связанном с лазарусом.
CalcProg , 05 сентября 2019 в 15:29
#7
алгоритм
шаг1: 2700/2400=1.125
шаг2: 0.125*2400=300
шаг3: в цикле сравниваем с типоразмерами 300
CalcProg , 05 сентября 2019 в 15:35
#8
остаток 300 сравнивается с остальными типоразсерами и так как он меньше 1200 и 900 то в результате получается 1-2400 и 300 - монолит.
а если остаток больше типоразмера, то он делится на этот типоразмер. получается новый остаток от деления с которым все действия повторяются.
Евгений Грызунов , 05 сентября 2019 в 15:36
#9
Цитата:
Сообщение #6 от CalcProg

пример называется банкомат. выложен на Iforum.pro автор Nik_1. Алгоритм идентичный, только купюры заменяешь блоками. Написан на лазарусе, но выложен в другом разделе не связанном с лазарусом.

Кажется нашел. 376 строк - не мало. Дело в том что раскладку ФБС, плит, купюр - я делал без проблем, исходные элементы фиксированного размера. А вот когда дело заходило для произвольных чисел у меня ступор. Да и еще и на голом экселе.
Евгений Грызунов , 05 сентября 2019 в 15:39
#10
Цитата:
Сообщение #8 от CalcProg

... в результате получается 1-2400 и 300 - монолит.


правильный ответ 900х3 = 2700 вы так и не получили.
zip

1.28 МБ