0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 91
|
|
Как выбрать кратность из перечисленных кратностей для заданной суммы?24.12.2018, 21:19. Показов 2756. Ответов 15
Метки нет Все метки)
(
Ребята, добрый день, подскажите, пож-ста с алгоритмом. Ума не приложу.
Прошу помощи в вопросе. Даны кратности 30, 70, 90, 100 . Сумма, которую вводит пользователь. если пользователь введет 60 , то эта сумма не меняется. если пользователь введет 45-> сумма 70 155->160(30+70+30+30) 150->150(90+30+30) причем кратностей может быть много, не только 4, а более 5, 6, 7.... Найти быстрый алгоритм, позволяющий округлять в большую сторону.
0
|
24.12.2018, 21:19 | |
Ответы с готовыми решениями:
15
Какие выбрать комплектующие из перечисленных? Проверка суммы на кратность ценам товара
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
25.12.2018, 00:00 | |
Ребята, добрый день, Ума не приложу. Прошу помощи в вопросе. Ну и как это все понять?
Не по теме: Я учился у Ванги. Был на хорошем счету. Подавал надежды. Но тут я понял, что я - фуфло. И ничему меня не научили. Только даром тратили время.
1
|
![]() ![]() |
|
25.12.2018, 00:12 | |
kframv, что такое "кратность" в вашем понимании? Кратность чего? Есть выражение "70 кратно 7", то есть 70 делится на 7 без остатка. А у вас?
По какому принципу из 45 получается 70? Точно, что бабы Ванги не хватает здесь.
0
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 91
|
|
25.12.2018, 05:06 [ТС] | |
Дано коробка-30шт - 2 упаковки, коробка-70 шт- 3 упаковки, коробка 90-1 упаковка, коробка 100- 8 упаковок
Есть поле инпут, в которое вводит пользователь некую сумму. мне нужно, чтобы клиент смог сделать - если пользователь ввел 60, то надо набрать СУММУ кратностей равную 60 (2 коробки по 30) - если пользователь ввел 45, то надо набрать СУММУ кратностей равную 70 (1 коробка по 70, потому что в приоритет ставится дать меньшее число монет) - если пользователь ввел 155, то надо набрать СУММУ кратностей равную 160 (4 коробки 30 70 30 30, или если числом монет то надо дать 2 коробки 90 и 70) Клиент может заказать кол-во товаров превышающее наличие (30*2+70*3+90+8*100=1160). но тогда будет под заказ. Мне главное, чтобы запретить клиенту заказать 5 позиции- можно заказать только 30. Добавлено через 4 минуты по принципу того, что нельзя заказать 45 шт, если заданы кратности коробки в 70шт, в 30шт, в 90шт, в 100шт.
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
25.12.2018, 12:55 | |
Все-таки не хотелось бы подводить своих учителей...
Попробуем поставить задачу так. Есть некий штучный товар. Скажем, презервативы. Они упакованы в коробки по 30, 70, 90, 100 штук. Клиент заказывает N презервативов. Но продавец не хочет коробки вскрывать. Найти наименьшее число K, большее или равное N, удовлетворяющее запрос покупателя, которое можно составить, не вскрывая коробок. И указать набор коробок. Если число K можно получить несколькими способами, указать тот, в котором число коробок минимально. Так? Похоже?
0
|
![]() ![]() |
|
25.12.2018, 13:32 | |
Байт, и ещё одна проблема в критерии: можно получить количество презиков немного больше нужного, но большим числом коробок, либо сильно больше нужного, но малым числом коробок. В посте #1 kframv для заказа 150 шт. товара использовал набор коробок 90+30+30 (3 коробки), но набор 90+70 даёт бОльшую сумму товара, но меньше коробок. Вопрос к ТС. Например, был бы заказ 145 шт., что выбрать: 90+30+30 или 90+70 и почему?
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
25.12.2018, 13:46 | |
jogano, да, это уже многокритериальная задача, а их, как правило, трудновато решить без сведения к одному критерию....
0
|
![]() ![]() 3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
|
|
25.12.2018, 14:09 | |
Байт, с таким объектом
![]() У меня в представлении что то напоминающее было, но введение объекта "количество монет" меня добило окончательно. Вот вариант решения с помощью функции "Поиск решения" в EXCEL. Число вариантов "коробок" специально сделал чуть больше (как где-то упоминалось ТС). Задача строится как поиск оптимума по штрафной функции. Конечно штрафную функцию возможно надо подстроить с учетом замечаний jogano. Вот собственно файл
1
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 91
|
|
25.12.2018, 21:35 [ТС] | |
все зависит от наличия на складе.
Пример ниже. все выбирается наугад, в зависимости от наличия на складе Есть магазин-инет, открываем карточку товара. По данному артикулу этого товара мы продаем коробки : а)в упаковке -20шт, -кратность 20 (кол-во коробок=4) б)в упаковке -50шт,-кратность 50 (кол-во коробок=2) в)в упаковке -90шт.-кратность 90 (кол-во коробок=1) всего у нас шт-(20*4+50*2+90=270шт) в поле ввода количества по умолчанию стоит 20шт(найменьшая кратность), если мы нажмем клавишу вверх( то увеливываем на 20 в поле-инпут станет40) если мы поменяем значение в самом поле, то должен стоять алгоритм если мы введем 50 или 90, то система ничего не меняет. если мы введем 45 то система в поле инпут должна поменять на 50. если мы введем 70 , то система должна вывести окно (ты можешь взять 70, но коробки 20 и 50)- ставим галочки если мы введем 290 шт- система выведет (коробка 20шт-4, коробка 50шт-2, коробка 90шт -1) + заказ 20шт -ставим галки и заказываем в корзину.
0
|
25.12.2018, 22:05 | |
Не по теме: Однако, учителей своих я подвел. Как был дураком и неумехой, так и остался. Простите меня, люди добрые, но я все равно понять не в силах ни-че-го
0
|
![]() ![]() |
|
25.12.2018, 22:33 | |
Не по теме: Я не могу так ... , аналитический мозг не способен без поллитры разобраться :)
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
25.12.2018, 22:36 | |
0
|
![]() ![]() 3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
|
||||||
26.12.2018, 11:14 | ||||||
Попытаюсь угадать еще раз.
Вот код на MATLAB, который определяет возможный набор количества из набора коробок, и количество коробок для реализации данного набора. Кликните здесь для просмотра всего текста
Вот такой результат он выдает, на основе данных из сообщения №10 0 20 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200 210 220 230 250 270 0 1 2 0 3 1 4 2 0 3 1 4 2 3 3 4 4 0 3 1 4 2 3 4 0 0 0 1 0 1 0 1 2 1 2 1 2 0 2 0 2 2 1 2 1 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 Добавлено через 11 минут Да, забыл написать очередное придумывание вместо ТС задачи. На складе имеется некоторый товар (штучный) упакованный в коробки разной вместимости, причем в текущий момент на складе в наличии только определенное количество коробок каждого вида. Некий ЗАКАЗЧИК собирается сделать заказ, но тк коробки продаются только целиком ни в коем случае не вскрываясь (а то Байт придумал их тут вилами разгружать ![]() Вот ТС и предлагает помочь ЗАКАЗЧИКУ с выбором, и на форме заказа иметь например ComBox с заполненными возможными для поставки количествами товара, и ЗАКАЗЧИК выберет из этого уже ограниченного перечня. Одновременно надо знать, а сколько каких коробок надо отправлять, чтобы выполнить заказ. PS Ежели я угадал формулировку задачи, так искусно зашифрованную ТС, то прошу мне выдать ОРДЕН имени ВАНГИ
1
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
26.12.2018, 11:51 | |
Непременно, непременно... Похлопочем перед администрацией за учреждение. а как только, так я первый же вас и рекомендую.
Но и вам придется принять участие, а не сидеть сложа руки. Эскизик бы... Если сами не могете (лично я вообще могу поспорить за качество рисунка только с куриной лапой) - можно попросить кого-то. Тут у нас на форуме есть такие умельцы... А название само напрашивается. "Экстрасекс Форума" ![]()
0
|
![]() ![]() 3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
|
|
26.12.2018, 12:04 | |
0
|
26.12.2018, 12:04 | ||||||
Помогаю со студенческими работами здесь
16
Подбор значений для заданной суммы
Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
|
Метод с двумя буферами (или double buffering) или ping-pong buffering
Hrethgir 02.04.2025
Из ответов LM модели.
Метод, который предполагает использование двух массивов для хранения промежуточных результатов сложения векторов, обычно применяется в сценариях, где необходимо минимизировать. . .
|
На любовном киберфронте
Alexander-7 01.04.2025
Недавно на одном малоизвестном сайте знакомств мною заинтересовалась девушка:
«Текст немного странный. Но, судя по адресу почты, иностранка», – подумал я. Поколебавшись пару суток, я ответил ей:. . .
|
Как работает Node.js изнутри
run.dev 29.03.2025
Node. js изменил подход к разработке веб-приложений, позволив использовать JavaScript не только на стороне клиента, но и на сервере. Созданный в 2009 году Райаном Далем, этот открытый,. . .
|
Моки в Python: Mock Object Library
py-thonny 29.03.2025
Тестирование кода требует особого подхода, когда речь идёт о компонентах, взаимодействующих с внешним миром. Мы часто сталкиваемся с непредсказуемостью HTTP-запросов, чтением данных из базы или. . .
|
JavaScript: Управление памятью и улучшение производительности
run.dev 29.03.2025
В отличие от низкоуровневых языков программирования, JavaScript не требует ручного выделения и освобождения памяти. Здесь работает автоматический сборщик мусора, который определяет, какие объекты. . .
|
Мультитенантная архитектура со SpringBoot и PostgreSQL
ArchitectMsa 29.03.2025
SaaS-приложения редко обслуживают одного клиента и обычно они должны поддерживать множество организаций, каждая из которых работает в своём изолированном пространстве. Мультитенантная архитектура. . .
|
std::span в C++: Производительность и лучшие практики
NullReferenced 28.03.2025
std::span — одно из самых недооценённых нововведений стандарта C++20, которое радикально меняет подход к работе с непрерывными последовательностями данных. По сути, это невладеющее представление. . .
|
Многопоточность в C#: Threadpool
UnmanagedCoder 28.03.2025
Пул потоков в C# — это коллекция заранее созданных и готовых к использованию потоков, которые находятся в распоряжении приложения. Вместо того чтобы создавать и уничтожать потоки для каждой небольшой. . .
|
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
|