I thought of this too. Also, at some point you may want to name it (here incorporating the suggestion to move the pairing out of the concept):
marginPct=: 1 - [: %~/ [ +/ .* ] 100 5 marginPct 10 3,: 7.5 2 0.701205 On Tue, Mar 18, 2014 at 11:02 AM, Pascal Jasmin <[email protected]>wrote: > the only things I'd change: > > use ] instead of [ to be able to work in a dyadic verb > then make a verb, and probably assign it so as to be able to do the calc > another day or with other data. > > > > > 13 : '1- %~/ +/ x * _2]\ y' > 1 - [: %~/ [: +/ [ * _2 ]\ ] > 100 5 (13 : '1- %~/ +/ x * _2]\ y') 10 3 7.5 2 > 0.701205 > > > > > > ----- Original Message ----- > From: Joe Bogner <[email protected]> > To: [email protected] > Cc: > Sent: Tuesday, March 18, 2014 9:04:59 AM > Subject: [Jprogramming] J as a calculator > > I'm trying to use J more in my daily calculations in addition to > programming. > > I was working with some simple margin % calculations in a one liner > > 1- %~/ +/ (100 5) * _2[\ (10 3 7.5 2) > > I'd like any ideas on how others would do this type of 'spreadsheet' > calculation. I'm pretty happy with it, but wondering if there's a more > clear way of expressing it in a one liner. > > Margin % is calculated as 1 - Extended Cost / Extended Price > > Or more traditionally as Price - Cost / Price > > In the example above, I have units as 100 and 5 and prices of 10,7.5 > and costs of 3 and 2 > > Price & Cost > > _2[\ (10 3 7.5 2) > 10 3 > 7.5 2 > > Extended Price & Cost: > > (100 5) * _2[\ (10 3 7.5 2) > 1000 300 > 37.5 10 > > Total Cost & Price > > +/ (100 5) * _2[\ (10 3 7.5 2) > 1037.5 310 > > Margin % > 1- %~/ +/ (100 5) * _2[\ (10 3 7.5 2) > 0.701205 > > Any ideas on making it more clear are welcome > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > -- Devon McCormick, CFA ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
