En général, une équation linéaire commencera par y = mx + b
, où b
est votre valeur de départ et mx
comment vous ajustez la valeur de départ au fur et à x
mesure.
Donc, la première partie de votre équation, le b
, sera 10
parce que vous voulez que les fermes commencent à 10 aliments.
y = mx + 10
Ensuite, dans votre cas, vous souhaitez ajuster la nourriture produite par dix fermes. Vous devrez donc diviser par dix pour obtenir une équation qui fonctionne pour dix fermes (en supposant que le x / 10
renvoie un entier, c'est 13 / 10 = 1
-à- dire :
y = m * (x / 10) + 10.
Donc, finalement, nous devons déterminer comment nous voulons que la nourriture change pour chaque x / 10
ferme. Dans votre cas, vous voulez qu'il diminue de 0,5 (5% de 10), ce qui est linéaire. Nous obtenons donc:
y = -0.5 * ( x / 10 ) + 10.
Donc, pour la ferme x = 5
, nous obtenons 5 / 10 = 0, 0 * -0.5 = 0, 0 + 10 = 10
. Pour la ferme que x = 11
nous obtenons 11 / 10 = 1, 1 * -0.5 = -0.5, -0.5 + 10 = 9.5
, pour la ferme 23, nous obtiendrions 9,0.
Ensuite, il vous suffit de calculer la nourriture totale pour toutes les fermes.
y = 0
for( x = 0; x < totalFarms; x++ )
{
y += -5 * ( x / 10 ) + 10;
}
Mais peut-être que vous de 5%, vous vouliez qu'il diminue de 5% de la valeur précédente. C'est-à-dire 10, 10 * 0.95 = 9.5, 9.5 * 0.95 = 9.025
(dans ce cas, le montant que nous diminuons devient de moins en moins). Permet donc de modifier l'équation. 5%
est une augmentation de type exponentielle, et la formule exponentielle est y = b*m^x
.
Nous avons encore b = 10
, et nous devons faire notre division par 10 astuce. Nous avons donc y = 10*m^(x/10)
. m
est 0.95
, puisque nous voulons prendre 95% de la valeur à chaque fois. Donc, l'équation pour la ferme x
est y = 10*0.95^(x/10)
.