Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 сентября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Давно заметил, что всё-таки языки С/C++ это не самый лучший вариант программирования под Windows. Сейчас появилась масса более современных и удобных языков, например тот же Python - кроссплатформенный язык, очень легок в изучение. Я его изучил буквально за несколько дней по этому курсу - ссылка. Автор постарался, там видеоуроки на удивление легкие и понятные.

Рациональный линейный гильотинный раскрой. Метод динамического программирования (задача рюкзака). Сеточная схема

Алгоритм процедуры:

1. Определяется текущее значение длины раскроя (l) от минимальной длины детали до длины материала.

2. Вычисляется максимальный индекс детали, добавление которой возможно.

3. Если отсутствуют детали, которые можно добавить в раскрой, то проверяется не достигнут ли максимум цены раскроя для текущего значения длины раскроя (l). Если максимум достигнут, то он запоминается. Последняя добавленная деталь удаляется из раскроя и добавляется следующая (п. 4). Если нет деталей которые можно добавить в раскрой, происходит выход из цикла.

4. Запоминается текущий раскрой. Длина раскроя уменьшается на длину детали. Цена раскроя увеличивается на цену детали. Определяются детали, добавление которых в раскрой возможно (п. 2).

5. Берется начальная длина раскроя, равная длине материала. Берется деталь, на которой был достигнут максимум для данной длины материала. Из длины материала вычитается длина детали, к стоимости раскроя прибавляется цена детали. П.5 повторяется, пока есть детали добавление которых к раскрою не превысит длины материала.

6. Зная количество деталей для каждого их вида, составляющих рациональный раскрой, формируется вектор х.

Код программы записан на языке Object Pascal в среде Delphi 4.0, однако представляет определенный интерес, так что выставлена здесь вопреки тематике архива. Вычисление производятся процедурой, получающей в качестве параметров длину материала, количество деталей и массив данных деталей. Результат — количество деталей каждого вида.

Скачать исходники и исполняемый модуль: ratlincut.zip (262 Кб)



<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS