HP Forums
How can PPL discover that CAS is disabled (ie Exam Mode) - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html)
+--- Forum: HP Prime (/forum-5.html)
+--- Thread: How can PPL discover that CAS is disabled (ie Exam Mode) (/thread-11035.html)



How can PPL discover that CAS is disabled (ie Exam Mode) - StephenG1CMZ - 07-11-2018 07:46 AM

In the somewhat unlikely situation where CAS is disabled but user PPL programs remain enabled in exam mode (I assume that is possible), how can a PPL program discover that CAS is disabled?

Without knowing a good example, if we assume gcd() is a fast CAS function and GCD() a slow PPL function, can I write
Code:

CASE
CASenabled :  gcd() END;
PPLenabled : GCD() END;
DEFAULT my_own_gcd() END;
END:
What is the best way of detecting "CAS enabled"?
More generally, can PPL interrogate Exam mode to discover what is enabled and what is not?

How does Exam mode disable CAS - will gcd() not compile because the gcd() function is no longer defined, or is a run-time error generated?


RE: How can PPL discover that CAS is disabled (ie Exam Mode) - cyrille de brébisson - 07-12-2018 06:27 AM

Hello,

I would think that an IFERR around a known good CAS call would work...

local CasEnable= 1;
IFERR cas("1+1"); THEN CasEnable:= 0; END;

Might work. I have not tested it though...

Cyrille


RE: How can PPL discover that CAS is disabled (ie Exam Mode) - roadrunner - 07-12-2018 11:11 AM

You could check the color of one of the pixels near the top of the screen; if it's orange, you're in exam mode.

-road