Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Формула для расчета скидки? / 8 сообщений из 8, страница 1 из 1
15.09.2003, 12:58
    #32265002
Александрик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
Бьюсь уже несколько дней... Помогите пожалуйста...
(и что я делал в Универе на занятиях по математике? :) )

Есть:
а - минимальный размер предоставляемой скидки
b - максимальный размер предоставляемой скидки
P - потолок - величина общей суммы внесенной клиентом с которой будет предоставляться b (максимальная скидка)
S - сумма, которую внес клиент...

Необходимо рассчитать X - предоставляемая на текущий момент скидка...

линейная форма, типа: X = a+(b-a)S/P при S<P и X=b при S>=P не устраивает...

Необходимо чтобы приращение скидки (производная по S) убывала и в идеале, в точке P была бы равна 0...
Очень хотелось бы, что бы можно было как-нибудь задавать уровень кривизны для этой зависимости...

Заранее огромная благодарность...
...
Рейтинг: 0 / 0
15.09.2003, 13:56
    #32265090
Jinn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
Если тебе нужна только нелинейность, то возведи S и P в степень больше двух или извлеки корень той же степени и подели их друг на друга. Просто и со вкусом, в том числе получишь нужную нелинейность.
...
Рейтинг: 0 / 0
15.09.2003, 15:55
    #32265260
Александрик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
Попробовал сделать так

X = a+(b-a)S^N/P^N при S<P и X=b при S>=P

при 0<N< 1 - работает на ура...


Проблема №2:

Система, к которой эта штука делается не понимает (пока еще) Корней и в большую степень возводить не умеет... (знает только LOG) :(

что-нибудь попроще не подскажете...
...
Рейтинг: 0 / 0
15.09.2003, 16:39
    #32265355
Jinn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
X = a+(b-a)*(S*S*S)/(P*P*P) при S<P и X=b при S>=P

Это возведение в степень :)

при 0<N< 1 - работает на ура...

А это уже извлечение корня:

X = a+(b-a)*(S^(1/3))/(P^(1/3)) при S<P и X=b при S>=P

Можешь попробовать логарифмировать по тому же принципу.
...
Рейтинг: 0 / 0
15.09.2003, 16:52
    #32265383
Александрик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
:)
X = a+(b-a)*(S*S*S)/(P*P*P) при S<P и X=b при S>=P
- это да... ВОТ ТОЛЬКО ФОРМА ВОГНУТАЯ :(

Интереснее конечно:
X = a+(b-a)*(S^(1/3))/(P^(1/3)) при S<P и X=b при S>=P

Системка вот это: (S^(1/3))/(P^(1/3), как раз таки сделать и не может...

НО Я НЕ ОТЧАИВАЮСЬ...

Попробовал пологорифмировать...
X = a+(b-a)*Log(S)/Log(P) - Вид - замечательный... Кривая такая как нужно...
вот только изменить ее НЕ ПОЛУЧАЕТСЯ...М
...
Рейтинг: 0 / 0
16.09.2003, 10:57
    #32266060
Varan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
off_topic
Александрик, ты прямо как Юлий Цезарь - одновременно и про хром и про скидки задачи решаешь.
...
Рейтинг: 0 / 0
16.09.2003, 12:57
    #32266305
Александрик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
Чтож делать - жизнь такая....
...
Рейтинг: 0 / 0
08.10.2003, 10:36
    #32287157
doroshka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула для расчета скидки?
Если это еще кому-нибудь надо, то может поможет такая формула:



log_a(b) = ln(b)/ln(a) = lg(b)/lg(a) = log_x(b)/log_x(a) =...

где - log_a(b) - логарифм от b по основанию a; ln - натуральный логарифм; lg - десятичный логарифм;

Варьируя основаниями - наверное можно добиться нужной кривизны.

.... и насчет извлечения корня....
Есть хорошая формула -
a^b = exp(b*ln(a))

т.о. S^(1/3))/(P^(1/3) = exp(ln(S)/3)/exp(ln(P)/3) = exp(ln(S/P)/3).
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Формула для расчета скидки? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]