クマのプーさん
Мудрец
(15499)
4 года назад
ну гляди, у тебя три точки. Минимальный полином будет второй степени
f(x) = ax^2 + bx + c
подставляем исходные данные
f(x=1) = a + b + c = 16200
f(x=500) = 250000 a + 500 b + c = 1620
f(x=1000) = 1000000 a + 1000 b + c = 162
решаем, находим a, b, c получаем функцию
f(x) = 121527/4615750 * x^2 - 195750027/4615750 * x + 299883114/18463
если бы перая точка была бы в нуле, то можно было бы сказать, что увеличение аргумента на 500 даёт уменьшение в 10 раз.
Это назыается экспонента:
f(x) = 16200 / 10^(x/500)
Capy Bara
Мастер
(1535)
4 года назад
Можно определить ассоциативный массив:
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
map.put(1, 16200);
map.put(500, 1620);
map.put(1000, 162);
Лайт Близзард
Знаток
(464)
4 года назад
Перевожу:
Есть функция f
f(1)=16200
f(500)=1620
f(1000)=162
Тебе нужна формула самой функции, построенной по трем заданным значениям, и программа, которая спрашивает у пользователя: введите x чтобы узнать значение f(x), верно?
А теперь, напиши, какой именно язык программирования тебе нужен?
Эдгар ВалтерсУченик (160)
4 года назад
Ответ на вопрос уже нашел, мне помог друг кодер.
+ ко всему я допустил значимую ошибку в вопросе, вместо 1 - 10, в итоге все это делается таким образом (100 * 1620) / х
число х любое от 10-1000
Так вот мне нужно четкое соотношение, приведите пример в виде уравнения
1 = 16200
500 = 1620
1000 = 162