HP Prime and Strings



#2

Since the HP Prime is able to handle strings, is it possible to take strings and convert them into functions? I know back in the TI-85 there was such a command. Does/will the HP Prime have the ability to ask users to input a function to be used as a symbolic object like equations in the HP48 series?

I tried using the INPUT command but it seems to only accept numerical inputs.


#3

What I found to be the most successful is to pass functions as strings as arguments. Example:


\\ calculate the numerical derivative of f(X) at X = N

EXPORT NDER(str1, N)
BEGIN
X:=N + .000001;
D:=EXPR(str1)
X:=N - .000001;
D:= D - EXPR(str1);
D:= D/(.000002);
RETURN D;
END;

EXPR - numerical evaluation of the string with the appropriate variables substituted.

f(X) = 3*e^X - 3*X^2. Find f'(1).

NDER("3*e^X - 3*X^2",1) returns 2.15484.

We could also use strings to store functions into graphing functions or equations. Example: "3*X+4" - > F1

Hope this helps, Eddie

#4

Quote:
I tried using the INPUT command but it seems to only accept numerical inputs.

INPUT allows all type of argument but you have put the right delimiters:

" "

[ ]

{ }

etc.

be carefull that A..Z variables are only numericals

The INPUT command is very powerfull (default value, on line help ...)


#5

Could you give me an example of how to ask the user to enter in a function that can be used as a function? Ideally I would like to have something like:

f(x,y)=

and have the user enter in a formula that can be used later on.

#6

Here is an example of a Newton method that uses a string parameter sFx to pass a string image for a function:

EXPORT Newton(sFx,xguess,toler)
BEGIN
LOCAL h,f,fp,diff;
REPEAT
h:=0.001*(ABS(xguess)+1);
X:=xguess;
f:=EXPR(sFx);
X:=xguess+h;
fp:=EXPR(sFx);
diff:=h*f/(fp-f);
xguess:=xguess-diff;
UNTIL ABS(diff)<toler;
RETURN xguess;
END;

Samples calls are:

Newton("EXP(X)-3*X^2",-1,.00000001)
-.458962267537
Newton("EXP(X)-3*X^2",1,.00000001)
.910007572489
Newton("EXP(X)-3*X^2",4,.00000001)
3.73307902863

The function uses the predefined variable X to store values of xguess (the guess for the root) and xguess+h, before calling function EXPR(sFx).

Namir


#7

Thank you for sharing your example, Namir. What I was looking for in particular, however, was an example on how to use INPUT in order to get a function. My goal is to create an interactive app, as opposed to a function like yours in which everything is entered at once. My attempt below results in an input-form-like interface (much like the HP48 series) but the default value is 0, and not a formula.

EXPORT EXAMPLE()
BEGIN

INPUT(F,"Graph 3D","f(x,y)=","Enter the function to graph","1/390*(X^3*Y-X*Y^3");

END;

If I do enter a new formula "X*Y" or 'X*Y' -- with the quotes -- I get a syntax error. If I take out the quotes, then (as expected), the value of F is whatever X*Y is equal to the moment the program was run. However, this is not what I want, since I cannot evaluate F at different values of X and Y later within my program.

Secondly, if such a procedure should work, then presumably F is a string. How would I then convert a string object into a function?

Edited: 20 Sept 2013, 10:16 a.m.

#8

Quote:
INPUT allows all type of argument but you have put the right delimiters:

" "

[ ]

{ }

etc.

be carefull that A..Z variables are only numericals

The INPUT command is very powerfull (default value, on line help ...)


To clarify, I was not referring the the arguments of the INPUT command. Instead the INPUT command -- when in use -- seems to only allow the user to enter in numerical values when the program is running.


Possibly Related Threads...
Thread Author Replies Views Last Post
  Strings inside matrix editor on 50g Chris Smith 3 210 05-22-2013, 04:04 PM
Last Post: Chris Smith
  Fun things found by running strings on the 39gII emulator bhtooefr 11 467 05-16-2013, 12:40 AM
Last Post: Mic
  HP 39gii Help Wanted: Inputting Strings in a Program Eddie W. Shore 0 103 02-09-2013, 02:17 PM
Last Post: Eddie W. Shore
  42s: programming long strings rob 1 106 09-03-2005, 09:00 PM
Last Post: Rob
  HP49G+: How do I sent text strings to the Picture screen? Eddie Shore 1 100 04-03-2004, 02:34 PM
Last Post: Raymond Del Tondo
  Help needed for displaying strings with INFORM Karl-Ludwig Butte 6 220 01-02-2004, 01:41 AM
Last Post: Karl-Ludwig Butte
  hp 42s combining strings Shawn 5 210 03-05-2002, 05:47 PM
Last Post: shawn

Forum Jump: