From: flebber Date: 2010-11-07T08:00:14+09:00 Subject: Re: Create a class - ideas On Nov 7, 9:45 am, flebber wrote: > On Nov 7, 2:24 am, Robert Klemme wrote: > > > > > > > > > > > On 06.11.2010 10:19, flebber wrote: > > > > I am trying to create a class. I am struggling to figure the best flow > > > to get the maths side to work. > > > > So say that > > > > R is a float given by user input > > > P is a Total amount(Pool) > > > Per is a variable % > > > X is a variable that is a percentage of P defined by a maximum > > > allocation. > > > > So main = (( R * X)/P)*100 > > > First of all you should get your variables right.  Variable "Per" does > > not show up in the formula and "main" is not mentioned in the list. > > > The meaning of the formula is totally unclear to me.  From what you gave > > you are calculating the fraction (R/P) multiply it with 100 (so you > > actually get (R/P) percent and now you multiply with another percentage > > (X).  So you have a percentage of a percentage. > > > > What I want to test is the value of X needed to equal Per from X's > > > maximum allocation down. > > > Can you write down a formula that contains all variables in your list > > and point at the fixed ones (constants), user inputs and variables you > > want to resolve? > > > > What i am thinking but cant get right > > > > Say > > > > R = 5 > > > P = 10 > > > Per = 190 > > > X = max 80% of P > > > > For X in main = Per ( Closest whole number or half that equals closest > > > to but greater than Per) > > > main = (( 5 * 8)/10)*100 > > > > So in example intially main equalled 400%. And answer I would want to > > > resolve it to is X = 4 which is 200% as 3.50 equals 180%. > > > > Any ideas? > > > Sorry you lost me somewhere along the path.  Also it's tea time right now... > > > Cheers > > >         robert > > > -- > > remember.guy do |as, often| as.you_can - without endhttp://blog.rubybestpractices.com/ > > So I want to check by changing X when in forumla "main" that it is => > than "per" > > In simple terms I want to calculate units needed to reach a rate of > return, X represents the variable units and per is the ROI(return of > investment rate I would deaire to acheive), R is the ratio of return > and P is a pool or base amount, I am using base 10 to start off with. > > I am trying to test X for a value, the only constraint on X is that it > cannot exceed 80% of the P or Pool amount. > So if I set per = 190% > > R = 5 > P = 10 > Per = 190 > X = max 80% of P > > For X in main >= per > > main = (( 5 * X)/10)*100 >= 190% > > so for X = 80% of P or 8 base units > > main = (( 5 * 8)/10)*100 > > which would test out as > > main >= per > > 400 => 190 - > > So when X is 8 units the main section is greater than per but its not > the closest whole unit to per. > > So when X = 40% or 4 base units > > main = (( 5 * 4)/10)*100 > main >= per > 200 >= 190 > > this is the largest unit in 0.5 increments that remains greater than > Per of 190 so I would want X once tested to resolve to this. > > I hope that made sense. So how do I best get X to run a loop in 0.5 increments until it reaches the closest value that makes the left side of an equation greater or equal to the right. But where it is the lowest value that is greater than or equal to the the right. Main => Per - where main is the lowest value it can be greater than per. Cheers Sayth