HP Forums

Full Version: Parsing expressions
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello

I wanted to explode expression like X^2 + 5 to the list of {operation,firstOP,secondOP}, i found i can do it in CAS window with "at" special syntax like 'X^2+5'[1 +-].

It rewrites it as at('X^2+5',0) and gives answer _x -> _x (looks like lambda).
'X^2+5'[2 +-] gives x^2
'X^2+5'[3 +-] gives 5

There is no really 'at' function and this code does not work in program.

So, question is: how to parse expressions ? If there some command like OBJ-> from 50g ?

Many many thanks anyway!
XSet
In CAS mode you can use part():

[attachment=2539]

The following CAS program could be a starting point for what you want:

Code:
#cas
OBJ(f):=
BEGIN
  LOCAL k,l;
  l:={};
  FOR k FROM 0 TO part(f) DO
   l:=CONCAT(l,part(f,k));
  END;
  return l;
END;
#end

[attachment=2540]
(09-15-2015 07:20 AM)Didier Lachieze Wrote: [ -> ]In CAS mode you can use part():


OMG! What a beautiful syntax, kinda functional!
Thank you! You are Wizard !
Cmd line works but obj just returns 0.

on android prime emulator.
(09-26-2015 05:44 PM)ji3m Wrote: [ -> ]Cmd line works but obj just returns 0.

on android prime emulator.

The android emu is basically equivalent at this moment to the version from dec 2014. The "part" command was added in 2015 I believe.
Thanks GOD i did not buy Android version
Reference URL's