Was it meant like that..? fp2 0.3 _0.3 3 _3 0.3 _0.3 0 _1
-M At 2017-08-07 20:38, you wrote:
It looks like we have two good solutions to find a fractional part: v _2.375 _5.84615 _11.4 13.0028 13.0014 13 12.9986 fp1=. * * 1|| NB. Martin fp2 =. (1&| - 0&>) NB. Bo & Raul collaboration. fp1 v _0.375 _0.846154 _0.4 0.0027933 0.00139082 0 0.998621 fp2 v _0.375 _0.846154 _0.4 0.0027933 0.00139082 0 0.998621 Also the converse - integer part: ip=: * * <.@| ip v NB. Louis _2 _5 _11 13 13 13 12 These two verbs need to be somewhere in the "Numbers" section of the J Phrases doc. Maybe under "8A-Numbers & Counting", or 8C-Representations", or "8D-Arithmetic". How do we get them in there? Can I edit the Phrases doc? Skip Skip Cave Cave Consulting LLC On Sun, Aug 6, 2017 at 11:22 AM, Louis de Forcrand <ol...@bluewin.ch> wrote: > ip would be best implemented as > ip=: * * <.@| > as it would return an integer result. > Louis > > On 06 Aug 2017, at 12:17, Skip Cave <s...@caveconsulting.com> wrote: > > > > All, Thanks for the help. > > > > Here's some real numbers from a problem I'm working on: > > Calculate some values from this equation: > > v=:2%(3r19-%1 2 3 245 246 247 248) > > v > > _2.375 _5.84615 _11.4 13.0028 13.0014 13 12.9986 > > Raul's first suggestion: > > 1|v > > 0.625 0.153846 0.6 0.0027933 0.00139082 0 0.998621 > > More precision, but signs are wrong on the negative numbers. > > > > Nolaig's suggestion: > > (- <.) v > > 0.625 0.153846 0.6 0.0027933 0.00139082 1.77636e_15 0.998621 > > Negative signs are still wrong, and the 6th entry should be zero. Looks > > like a compare tolerance problem. > > > > Pascal's solution: > > > > 1 (| |)v > > > > 0.375 0.846154 0.4 0.0027933 0.00139082 0 0.998621 > > Still has the negatives wrong. > > > > Martin's solution: > > fp=.**1|| > > > > fp v > > > > _0.375 _0.846154 _0.4 0.0027933 0.00139082 0 0.998621 > > Negatives are right, zeroes are right. This fractional part verb needs to > > be in the documentation as part of the numbers chapter. > > > > Also the integer part verb: ip=.]-**1|| should be included in the > > numbers section as well. > > ip v > > > > _2 _5 _11 13 13 13 12 > > > > Skip > > > > Skip Cave > > Cave Consulting LLC > > > > On Sun, Aug 6, 2017 at 6:42 AM, Raul Miller <rauldmil...@gmail.com> > wrote: > > > >> 1&| does work, actually. > >> > >> And, if you want an offset of -1 on that result when the original > >> value was negative, you can use (1&| - 0&>) > >> > >> Thanks, > >> > >> -- > >> Raul > >> > >> On Sun, Aug 6, 2017 at 3:19 AM, Martin Kreuzer <i...@airkreuzer.com> > >> wrote: > >>> In easy steps (and for further reference) ... > >>> > >>> From these test data (two floats, two integers, different signs), to > get > >> the > >>> fractional parts > >>> > >>> v=. 2.25 _8.11 16 _3 > >>> > >>> simply taking the Residue (when dividing by 1) doesn't work (error at > >>> negative float position) > >>> > >>> 1|v > >>> 0.25 0.89 0 0 > >>> > >>> So first get Magnitude > >>> > >>> | v > >>> 2.25 8.11 16 3 > >>> > >>> then take Residue > >>> > >>> 1 | (| v) > >>> 0.25 0.11 0 0 > >>> > >>> then get the sign right (see Raul's remark below) > >>> > >>> (*v) * (1 | | v) > >>> 0.25 _0.11 0 0 > >>> > >>> and put it as verb (fp), written as a fork > >>> > >>> fp=. * * 1|| > >>> fp v > >>> 0.25 _0.11 0 0 > >>> > >>> -M > >>> > >>> > >>> At 2017-08-06 02:14, you wrote: > >>> > >>>> Eh... but that's wrong. You can't add any integer to 0.542857 to get > >>>> _0.542857. > >>>> > >>>> If you want signed fractions, you'd need something like (*@] * (| |)) > >>>> > >>>> Thanks, > >>>> > >>>> -- > >>>> Raul > >>>> > >>>> > >>>> On Sat, Aug 5, 2017 at 10:01 PM, 'Pascal Jasmin' via Programming > >>>> <programm...@jsoftware.com> wrote: > >>>>> combining other answers we get the cute: > >>>> > >>>>> 1 (| |) _0.542857 _1.1875 1.96552 2.92308 4.13043 5.7 7.82353 > 10.8571 > >>>>> 15.5455 23.75 > >>>> > >>>> > >>>> > >>>> > >>>>> ________________________________ > >>>>> From: Bill <bbill....@gmail.com> > >>>>> To: "programm...@jsoftware.com" <programm...@jsoftware.com> > >>>>> Sent: Saturday, August 5, 2017 8:30 PM > >>>>> Subject: Re: [Jprogramming] Fractional parts > >>>> > >>>> > >>>> > >>>>> this also depends on what do you expect for negative numbers. > >>>> > >>>>> Sent from my iPhone > >>>> > >>>>> On 6 Aug, 2017, at 7:35 AM, Skip Cave <s...@caveconsulting.com> > >> wrote: > >>>> > >>>>>> Oops! i meant: > >>>>>> > >>>>>> How does one find the fractional parts of a vector of floating point > >>>>>> numbers? > >>>>>> > >>>>>> 0.542857 1.1875 1.96552 2.92308 4.13043 5.7 7.82353 10.8571 15.5455 > >>>>>> 23.75 > >>>>>> 41.8 114 247 > >>>>>> > >>>>>> i want: > >>>>>> 0.542857 0.1875 0.96552 0.92308 0.13043 0.7 0.82353 0.8571 5.5455 > >> 0.75 > >>>>>> 0.8 > >>>>>> 0 0 > >>>>>> > >>>>>> (Last two integers have zero fractional part.) > >>>>>> > >>>>>> > >>>>>> Skip Cave > >>>>>> Cave Consulting LLC > >>>>>> > >>>>>> On Sat, Aug 5, 2017 at 6:30 PM, Skip Cave <s...@caveconsulting.com> > >>>>>> wrote: > >>>>>> > >>>>>>> How does one find the fractional parts of a vector of floating > point > >>>>>>> numbers? > >>>>>>> > >>>>>>> 0.542857 1.1875 1.96552 2.92308 4.13043 5.7 7.82353 10.8571 15.5455 > >>>>>>> 23.75 > >>>>>>> 41.8 114 247 > >>>>>>> > >>>>>>> i want: > >>>>>>> 0.542857 0.1875 0.96552 0.92308 0.13043 0.7 0.82353 0.8571 5.5455 > >> 0.75 > >>>>>>> 0.8 > >>>>>>> 114 247 > >>>>>>> > >>>>>>> Skip > >>>>>>> > >>>>>>> Skip Cave > >>>>>>> Cave Consulting LLC > >>>>>> ------------------------------------------------------------ > >> ---------- > >>>>>> For information about J forums see http://www.jsoftware.com/ > >> forums.htm > >>>> > >>>>> ------------------------------------------------------------ > >> ---------- > >>>>> For information about J forums see http://www.jsoftware.com/ > >> forums.htm > >>>>> ------------------------------------------------------------ > >> ---------- > >>>>> For information about J forums see http://www.jsoftware.com/ > >> forums.htm > >>>> ------------------------------------------------------------ > ---------- > >>>> For information about J forums see http://www.jsoftware.com/ > forums.htm > >>> > >>> > >>> ---------------------------------------------------------------------- > >>> For information about J forums see http://www.jsoftware.com/forums.htm > >> ---------------------------------------------------------------------- > >> For information about J forums see http://www.jsoftware.com/forums.htm > >> > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm