En general, una ecuación lineal comenzará con y = mx + b
, donde b
está su valor inicial, y mx
es cómo ajusta el valor inicial a medida que x
aumenta.
Entonces, la primera parte de su ecuación, la b
, será 10
porque desea que las granjas comiencen con 10 alimentos.
y = mx + 10
A continuación, en su caso, desea ajustar la comida producida por cada diez granjas. Por lo tanto, deberá dividir entre diez para obtener una ecuación que funcione para cada diez granjas (suponiendo que x / 10
devuelve un número entero, es decir 13 / 10 = 1
:
y = m * (x / 10) + 10.
Finalmente, tenemos que descubrir cómo queremos que cambie la comida en todas las x / 10
granjas. En su caso, desea que disminuya en 0.5 (5% de 10), que es lineal. Entonces obtenemos:
y = -0.5 * ( x / 10 ) + 10.
Entonces, para la granja x = 5
, tenemos 5 / 10 = 0, 0 * -0.5 = 0, 0 + 10 = 10
. Para la granja que x = 11
tenemos 11 / 10 = 1, 1 * -0.5 = -0.5, -0.5 + 10 = 9.5
, para la granja 23, obtendríamos 9.0.
Entonces solo necesita calcular el total de alimentos para todas las granjas.
y = 0
for( x = 0; x < totalFarms; x++ )
{
y += -5 * ( x / 10 ) + 10;
}
Pero tal vez usted en un 5%, desea que disminuya en un 5% del valor anterior. Es decir, 10, 10 * 0.95 = 9.5, 9.5 * 0.95 = 9.025
(en este caso, la cantidad que disminuimos disminuye cada vez menos). Entonces modifiquemos la ecuación. 5%
es un aumento de tipo exponencial, y la fórmula exponencial es y = b*m^x
.
Todavía lo tenemos b = 10
, y necesitamos dividir por 10 trucos. Entonces tenemos y = 10*m^(x/10)
. m
es decir 0.95
, ya que queremos tomar el 95% del valor cada vez. Entonces la ecuación para granja x
es y = 10*0.95^(x/10)
.