How do you assign a global var in a CAS function?
|
11-05-2017, 11:18 PM
Post: #1
|
|||
|
|||
How do you assign a global var in a CAS function?
e.g., if you use EXPORT as below...
#cas TEST(l):= BEGIN EXPORT MMM:=256; RETURN l[3]; END; #end ...it compiles OK, but when you try to run TEST(L1), it'll give a bad argument error. However, if you comment out the EXPORT statement, it'll work fine. How do you create a global variable in a CAS function if EXPORT doesn't work? Thanks -Donald |
|||
11-05-2017, 11:27 PM
Post: #2
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
I did figure this out...
EXPORT MMM:=256; #cas TEST(l):= BEGIN RETURN MMM*l[3]; END #end ...but MMM is a Home variable when done this way. Let's say I want to create a global CAS list, which can be indexed using []. How do I do that from a CAS program? |
|||
11-05-2017, 11:58 PM
(This post was last modified: 11-06-2017 12:14 AM by webmasterpdx.)
Post: #3
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
Never mind! I think I got it figured....
If you do the following... #cas TEST(l):= BEGIN m:={5,4,3,2,1}; RETURN l[3]*m[2]; END #end m is now a global CAS variable of type list. Also, if the program was a Home program (defined with EXPORT), then assigning m the same way (not declared as LOCAL), it would be a Home variable of type List...and global. i.e. EXPORT is only needed for global variable definition if outside a program definition. |
|||
11-06-2017, 08:20 PM
(This post was last modified: 11-06-2017 08:22 PM by salvomic.)
Post: #4
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
(11-05-2017 11:27 PM)webmasterpdx Wrote: I did figure this out... Export is to use first of the #cas #end or BEGIN END; block, with default values, like: Code: export MMM:=[[0,0],[0,0]]; In another part of the program you must use STO (or sto) to store a value in the var exported, like: Code: sto({varrow, varcol}, MMM); When you store something, you can also read the variable in another part of the program (or other program)... Is this your goal? Salvo ∫aL√0mic (IT9CLU) :: HP Prime 50g 41CX 71b 42s 39s 35s 12C 15C - DM42, DM41X - WP34s Prime Soft. Lib |
|||
11-06-2017, 08:33 PM
Post: #5
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
My goal was just figuring out when variables are cas vars vs home vars. e.g. just assigning a var in a cas program (that isn't declared as local) will make it global, and if assigned in a cas program, it will be a cas variable. If it's a list for example, you'll need to use [] to index it instead of (). i.e. It makes a difference if it's a cas vs a home variable, even if the same type.
|
|||
11-06-2017, 10:01 PM
Post: #6
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
Donald,
probably you have already read this tutorial by Han. There is a lot of things to know about CAS programming. I hope you could find help in there. Salvo ∫aL√0mic (IT9CLU) :: HP Prime 50g 41CX 71b 42s 39s 35s 12C 15C - DM42, DM41X - WP34s Prime Soft. Lib |
|||
11-07-2017, 06:47 AM
(This post was last modified: 11-07-2017 06:52 AM by webmasterpdx.)
Post: #7
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
That article says that in CAS programs variable initialization must be done seperately from declaration.
...as in: local c; c:=5; However, I just tried initialization on the same line as in: local c:=5; ...and it worked. So....is this still the case or is it OK to initialize in the same line as declaration with the latest firmware? Let me know and I'll edit the article to remove that.... ??? Thx -Donald |
|||
11-07-2017, 07:10 AM
Post: #8
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
You can assign variables in a local statement, but you must take care of priorities, for example
Code: local a:=1,c:=3; Code: local a:=(1,c:=3); Code: local (a:=1),(c:=3); In a CAS program, non declared variables are global, if they already exist in Home (i.e. you made an EXPORT before) then they are HOME variables, otherwise they are global CAS variables. |
|||
11-07-2017, 07:44 AM
Post: #9
|
|||
|
|||
RE: How do you assign a global var in a CAS function?
Thanks Parisse.....that clears it up.
-Donald |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)