My solution should have met the specification. But you’re right, it’s far from simple (though its idea is – so I’m just bad at J).
Am 04.02.21 um 11:49 schrieb Ric Sherlock: > Sorry I should have been a bit more explicit with the specification. > > The reason that the double O in the 2nd example does not get an X inserted > is that once the X is inserted for the first double, the Os are split > between 2 digraphs and no longer require to be separated. In other words, > after the first insertion, the digraphs need to be re-generated to see if > further insertions are required. > > _2 ]\ dedouble 'THEEQUICKBROWFOOX' > TH > EX > EQ > UI > CK > BR > OW > FO > OX > > A simple non-looping solution doesn't leap out at me! > > > On Thu, Feb 4, 2021 at 6:20 PM Raul Miller <rauldmil...@gmail.com> wrote: > >> I would be tempted to go with >> >> dedouble=: #!.'X'~ 1 j. #{.}.=}: >> >> But I do not understand why the double O in your second example does >> not get an X inserted. So maybe I am missing something. >> >> I hope this helps, >> >> -- >> Raul >> >> On Wed, Feb 3, 2021 at 11:02 PM Ric Sherlock <tikk...@gmail.com> wrote: >>> >>> I need to separate any digraphs in a string, that consist of 2 letters >> the >>> same, by inserting an 'X' between them. >>> _2 ]\ 'THEEQUICKBROWFFOX' >>> TH >>> EE >>> QU >>> IC >>> KB >>> RO >>> WF >>> FO >>> X >>> >>> 'EE' is a digraph that needs an 'X' inserted. Doing so will result in: >>> >>> TH >>> EX >>> EQ >>> UI >>> CK >>> BR >>> OW >>> FF >>> OX >>> >>> So now we also need to separate the 'FF' digraph. >>> >>> I want to define a verb "dedouble" that will process a string so: >>> dedouble 'THEEQUICKBROWFFOX' >>> THEXEQUICKBROWFXFOX >>> But: >>> dedouble 'THEEQUICKBROWFOOX' >>> THEXEQUICKBROWFOOX >>> >>> I have implemented a solution at >>> https://rosettacode.org/wiki/Playfair_cipher#J but am interested in >>> alternative implementations. >>> ---------------------------------------------------------------------- >>> 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 > -- ---------------------- mail written using NEO neo-layout.org ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm