-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


Набор суммы минимальным числом слагаемых

Понедельник, 05 Июля 2021 г. 12:54 + в цитатник
test4me: swf
Цитата
за какой срок мы знаем фактическое количество проданного товара: за год, за месяц или как-то иначе.

Фактическое количество проданного уже товара нам не известно так как чеки где были данные с кодом продукции (названием) количеством, продажной ценой за единицу, общей суммой были утеряны!
Нам известна лиц общая сумма всех этих чеков которые были выбиты за день (имею ввиду за "день" так как эта инфа имеется на каждый день из этих ТРЕХ лет). Нам по этой общей сумме надо узнать какие товары могли бы быть проданны на эту сумму и в каком количестве.
Представьте допустим было всего за день 1300 покупателя. Чтобы легче было представить напишу маленькими цифрами.

1-й Покупатель купил разные товары (скажем ПР1, ПР2, ПР3)
ПР1 в количестве 4 шт по цене 2 за штуку,
ПР2- 5 шт по цене 3 за штуку ,
ПР3-1шт по цене 5 за шт:

ПР1=4*2=8,
ПР2=5*3=15,
ПР3=1*5=5
==========================
Всего на сумму 8+15+5=28 Это лишь 1 покупатель...таких за день может быть от 1 до 2000...в нашем случае мы условились что было 1300 покупателя.


Отсюда имеем чек который мы потеряли и где все видно что как почем и сколько... надо было сразу списать это количество товаров так как мы знаем что продали
ПР1=4шт,
ПР2=5шт,
ПР3=1шт
и было бы все ХОРОШО... но неважно почему и зачем и как так получилось... эти товары не списаны и их надо списать теперь задним числом, НО так как мы уже потеряли эти чеки у нас нет информации какое количество какого продукта
продано в конкретный день есть только СУММА которая ОБЩАЯ ЗА ЦЕЛЫЙ ДЕНЬ и там все чеки каждого покупателя за этот день просуммированы в этой сумме. Мы рассмотрели 1 покупателя что он купил так ведь, так вот имеющаяся СУММА у нас на руках это сумма например 1300 покупателей, и допустим эта сумма за день составляет 356708.

Так вот моя задача заключается чтобы узнать какие продукты могли бы быть проданы в каком количестве на сумму не выше но близкую к 356708.

Добавлено
swf

Какие мои действия как узнать?

Я знаю за день мой начальный остаток какжого товара, Допустим товаров всего 10 штук, знаю его себестоимость. Знаю была ли ЗАКУПКА если да то что закупили и в каком количестве, тоесть знаю себестоимость, Знаю был ли ВОЗВРАТ и если был какое количество возвратили, возвращаем всегда также по себестоимости как и купили его. Вычисляю на каждый продукт из 10 его ФАКТИЧЕСКУЮ СЕБЕСТОИМОСТЬ учитывая ОСТАТОК, ЗАКУПКУ и ВОЗВРАТ.

Что получили?

получили себестоимости 10 товаров за день. Допустим условно {10.56, 8.36, 11.78, 45.40, 4.28, 7.74, 3.89, 5.09, 15.42, 18.73} и у нас сумма 356708, тепрь алгоритм мне нужен помочь найти оптимальное решение приблизившись к этой сумме слагаемыми из себестоимостей (себестоимость это цена 1шт товара) увеличивая сумму слагаемого умножая на себестоимость и таким образом приближаться к сумме 356708. По ходу надо учитывать код товара продукта тесть у нас должен быть отдельно или вместе с себестоимостями еще и код продукта, например {101, 102, 103, 104, 105, 106, 107, 108, 109, 110}.

Зачем это нужно?

допустим мы получили после работы алгоритма такие слагаемые сумм {22326, 12708, 45200, 15763, 78800, 23500, 15300, 24202, 50235, 88674} все по кодам я уже могу знать что товар 101 например был за этот день продан на 22326 и его количество просто узнать эту сумму делю на его себестоимость тоесть 22326/10.56 =2114.2 ну когда алгоритм сработает на самом деле получим уже целые числа.... это значит нам надо в этотт день списать продукт 101 в количестве 2114 и так со всеми продуктами в этом списке...

Что дальше?

Это был 1-й день из 3*356 дней... допустим остаток товара на 1-й день был 3200 шт это мы узнали когда узнали ФАКТИЧЕСКУЮ СТОИМОСТЬ и ФАКТИЧЕСКОЕ КОЛИЧЕСТВО что дало нам ФАКТИЧЕСКУЮ СЕБЕСТОИМОСТЬ...
тепрь для 2-го дня делаем остатки этого товара 3200-2114=1086шт Теперь у нас для 2-го дня готов по продукту 101 ОСТАТОК КОЛИЧЕСТВО=1086, ОСТАТОК СУММА=ФАКТИЧЕСКАЯ СЕБЕСТОИМОСТЬ * ОСТАТОК КОЛИЧЕСТВО=10.56*1086=11 468.16
И так по всем продуктам в нашем случае 10 было их. Все эта итерация закончена теперь на 2-й день... и так пока не пройдем 3*356 дней... незнаю насколько все доступно объяснил... если не понятно было не поленюсь еще раз!!!

https://forum.sources.ru/index.php?showtopic=339382&view=findpost&p=3848745

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку