En general, una ecuación lineal comenzará con y = mx + b, donde bestá su valor inicial, y mxes cómo ajusta el valor inicial a medida que xaumenta.
Entonces, la primera parte de su ecuación, la b, será 10porque 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 / 10devuelve 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 / 10granjas. 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 = 11tenemos 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). mes decir 0.95, ya que queremos tomar el 95% del valor cada vez. Entonces la ecuación para granja xes y = 10*0.95^(x/10).