List processing problem HP 50g - Printable Version +- HP Forums (https://archived.hpcalc.org/museumforum) +-- Forum: HP Museum Forums (https://archived.hpcalc.org/museumforum/forum-1.html) +--- Forum: Old HP Forum Archives (https://archived.hpcalc.org/museumforum/forum-2.html) +--- Thread: List processing problem HP 50g (/thread-238006.html) List processing problem HP 50g - peacecalc - 01-28-2013 Hello RPL geeks, I need your help! I want to program a something which is feed by a list of two dim. vectors (the control points) and has bezier points (as vectors, too) as an output. The problem for is the input or more precise to get the right three points. ``` The points are po, p1, p2, p3, p4, ...and so on. Input: {po p1 p2 p3 p4 p5 p6} I want a to get these lists: {{po p1 p2} {p2 p3 p4} {p4 p5 p6}} or {po p1 p2 p2 p3 p4 p4 p5 p6} ``` This can be of course be programmed with direct accessing to the list, but maybe somebody know a method which uses the "parallel" list processing features of the HP 50g. The three functions "DOLIST", "STREAM" and "SUBSET" don't solve my problem as far I know. Sincerely peacecalc Edited: 28 Jan 2013, 3:52 p.m. Re: List processing problem HP 50g - Werner - 01-28-2013 The second list is easy ```\<< 1 \<< NSUB 3 MOD NOT DUPN \>> DOSUBS \>> ``` Will duplicate every third element and from that list ```\<< 3 \<< 3 \->LIST \>> DOSUBS \>> ``` Will produce the first list Cheers, Werner Re: List processing problem HP 50g - Gilles Carpentier - 01-28-2013 Hi peacecalc ! Quote: Input: {po p1 p2 p3 p4 p5 p6} I want a to get these lists: {{po p1 p2} {p2 p3 p4} {p4 p5 p6}} ```« 3 « 3 ->LIST NSUB 2 MOD NOT { DROP} IFT » DOSUBS » ``` Re: List processing problem HP 50g - Gilles Carpentier - 01-28-2013 ```\<< 1 \<< NSUB 3 MOD NOT DUPN \>> DOSUBS \>> ``` Excellent ;) EDIT : oups.... in fact this don't work Gives : { po p1 p2 p2 p3 p4 p5 p5 p6 } Edited: 28 Jan 2013, 4:41 p.m. Re: List processing problem HP 50g - Kiyoshi Akima - 01-28-2013 This produces { { p0 p1 p2 } { p2 p3 p4 } { p5 p5 p6 } } which isn't quite what was requested. Edited: Note that p5 is duplicated instead of p4. Edited: 28 Jan 2013, 4:36 p.m. Re: List processing problem HP 50g - peacecalc - 01-28-2013 Hello Gilles Carpentier, thank you for your fast solution. I've checked it and it works fine. For me it was a good lesson in RPL: your little piece of programming gem works in an unusual way. It produce every triple and deletes which are not wanted on the fly. Chapeau! Normally someone who makes programs (that the way I'm think, too) is avoiding every needless calculation, but here it is the way, which overcomes the obstacle. Again thank you very much! Sincerely peacecalc P.S.: Also to you Werner, thank you very much for your suggestions, even they aren't working, but they showed the possible way for a solution! Edited: 28 Jan 2013, 6:28 p.m. Re: List processing problem HP 50g - Werner - 01-29-2013 A similar trick can be used here: ```\<< 3 \<< 3 \->LIST NSUB 2 MOD NOT DROPN \>> DOSUBS \>> ``` Cheers, Werner