На входе массив из элементов: {X1, X2, ..., Xm}. Требуется составить все возможные сочетания элементов без учета размещения: {X1}, {X2}, ..., {Xm}, {X1, X2}, ..., {X1, Xm},...,{X2, Xm},...,{X1, X2, ..., Xm}. Другими словами, требуется получить все возможные подмножества множества элементов, заданного в исходном массиве. Результат функции - массив списков значений, содержащих разные подмножества элементов исходного массива. Массив включает и пустое подмножество (на последнем месте).
Автор: ildarovich
Функция ВсеПодмножества(Множество)
Ответ = Новый Массив;
Ответ.Добавить(Новый СписокЗначений);
Для ИндексЭлемента = 0 По Множество.Количество() - 1 Цикл
Для ИндексВарианта = 0 По Ответ.Количество() - 1 Цикл
Ответ.Добавить(Ответ[ИндексВарианта].Скопировать());
Ответ[ИндексВарианта].Добавить(Множество[ИндексЭлемента])
КонецЦикла
КонецЦикла;
Возврат Ответ
КонецФункции
Программное получение СочетаниеКлавиш
ПроверитьВозможностьЗаменыЭлементовСтрока (БСП)
ПроверитьВозможностьЗаменыЭлементов (БСП)
ЭлементОтбораСвойствоАлгоритмЗначения (БСП)
Многопоточная пометка удаления документов по организации за период
Найти заказы, количества во всех строках которых меньше либо равны нулю