Математика - Распределите список чисел за интервал - PullRequest
0 голосов
/ 03 сентября 2018

Моя проблема проста. Я ищу математическую функцию для распределения числа по интервалу.

Например, у меня есть этот список:

[2; 4; 9; 14]

И в моем случае я желаю

2  -> 1  = f(2)
14 -> 20 = f(14)
4  -> f(4) = ?
9  -> f(9) = ?

Это просто пример, который я ищу для f (x).

У кого-нибудь есть идеи?

Спасибо за продвижение! :)

1 Ответ

0 голосов
/ 03 сентября 2018

Если вы хотите линейную функцию, то:

f(x) = lowerFunc + (x - lowerX) * (upperFunc - lowerFunc) /  (upperX - lowerX),

где:

lowerFunc: function value at the lower end
upperFunc: function value at the upper end
lowerX: x parameter at the lower end
upperX: x parameter at the upper end.

Для вашего примера:

f(x) = 1 + (x - 2) * (20 - 1) / (14 - 2)
     = 1 + (x - 2) * 19/12
f(2) = 1
f(4) = 4.1666
f(9) = 12.08333
f(14) = 20
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...