Challenge: XCAS code to anothers CAS - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html) +--- Forum: General Forum (/forum-4.html) +--- Thread: Challenge: XCAS code to anothers CAS (/thread-10369.html) Challenge: XCAS code to anothers CAS - compsystems - 03-21-2018 07:52 PM Challenge: Port the following simple code written in XCAS on a calculator of texas instruments, casio, ..., as well as in other CAS (Mathematica, Maple, Symbolic toolbox (matlab), etc. Terms: You can not use text strings to form expressions, only CAS commands The following code, shows an exercise of the solution of a system step by step PHP Code: `testCAS():={   local y,x,list0,expr0,lsolx,y1,y2,sols,test1;   purge(x,y);   autosimplify(nop); autosimplify();   approx_mode(0); approx_mode();   DispG; ClrIO; printf("Solving a system of two equations"); printf("Solve the following system:");   list0 := [ y = x^2, y = 2*x + 3 ]; printf(list0);   printf("substitute y = x² in y = 2x + 3:");   expr0 := subst(list0(2),list0(1)); printf(expr0);   printf("substract 2x + 3:");   expr0 := expr0-(2*x + 3); printf(expr0);   printf("simplify:");   expr0 := simplify(expr0); printf(expr0);   printf("factor:");    expr0 := factor(expr0); printf(expr0);   printf("zero factor theorem:");    lsolx := [ part(left(expr0),1)=0, part(left(expr0),2)=0 ]; printf(lsolx);   printf("First factor plus 3, second minus 1:");   lsolx := [lsolx(1)+3, lsolx(2)-1 ]; printf(eval(lsolx,1));   printf("simplify"); printf("x values:");   lsolx := simplify(lsolx); printf(lsolx);   printf("y values:"); printf("Replace x values in the system, firts equation");    y1 := subst(list0(1),lsolx(1)); printf(y1);   printf("Replace x values in the system, second equation");   y2 := subst(list0(1),lsolx(2)); printf(y2);   printf("Solutions shaped as a array");   sols:=[[lsolx(1),y1],[lsolx(2),y2]]; printf(sols);    printf("Checking results:"); printf("Replace x and y values in the system, firts equation");    test1 := subst(list0(1),[sols(1,1),sols(1,2)]); printf(test1);   printf("Evaluate:");   test1 := evalb(test1); printf(test1);   printf("Replace x and y values in the system, second equation");    test1 := subst(list0(1),[sols(2,1),sols(2,2)]); printf(test1);    printf("Evaluate:");   test1 := evalb(test1); printf(test1);   sols := solve([ y = x^2, y = 2*x + 3 ],[x,y]); printf("Solutions:"); printf(sols);   printf("Solutions shaped as a boolean expression:");   sols := list2exp(sols,[x,y]); printf(eval(sols,1));   printf("Graphing");    plot([x^2,2*x+3],x);    // DispHome    return("Done"); }:; ` output /! The hp-prime still can not be executed, because there is no control over the CAS modes from a program