Would someone be willing to help me develop an implicit function grapher for the TI-84 pce?
- mr womp womp
- Official Cemetech Cat Manager (Posts: 1781)
- 24 Jan 2018 10:31:36 pm
- Last edited by mr womp womp on 27 Jan 2018 06:01:47 pm; edited 1 time in total
I whipped up a little program, it is really bad (most functions wont work...) and painfully slow, and I stole weregoose's string replace routine.
Here it is
Code:
also, it doesn't really graph at all, it just draws a lot of points and pretends that that's somehow good enough
It seems to have a preference for things that have more than one y for each x, and those expressions seem to work more often, but I couldn't be bothered to figure out exactly what's going on.
Here are some sample drawings (when you don't get any error...)
X+Y²-1
2X+Y-1
Here it is
Code:
ClrAllLists
Input "F(X)=",Str1
Str1→Str3
For(X,Xmin,Xmax,0.3
length(toString(X→V
"("+Str3+")"→Str1
inString(Ans,"Y",2→W
While Ans
sub(Str1,1,W-1
If V:Ans+"("+toString(X)+")"
Ans+sub(Str1,1+W,length(Str1)-W→Str1
inString(Ans,"Y",V+W→W
End
Str1→Y₁
solve(Y₁,X,0,{-E99,E99
Ans→L₁(1+dim(L₁
X→L₂(1+dim(L₂
End
DelVar Y₁
Plot1(Scatter,L₁,L₂,•
DispGraph
also, it doesn't really graph at all, it just draws a lot of points and pretends that that's somehow good enough
It seems to have a preference for things that have more than one y for each x, and those expressions seem to work more often, but I couldn't be bothered to figure out exactly what's going on.
Here are some sample drawings (when you don't get any error...)
X+Y²-1
2X+Y-1
For a quick-and-dirty visual without the muss of variable manipulation, this program (for use on the color edition) evaluates at a fixed number of positions and assigns a gray color based on how close each answer came to zero. With both axes at -1 to 1, try Y1=abs(X)+abs(Y)-1 for a diamond, or (X²+Y²)²-2XY for a lemniscate.
Code:
Code:
FnOff
DispGraph
8ΔX→R
For(X,Xmin+2ΔX,Xmax,4ΔX
For(Y,Ymin+2ΔY,Ymax,4ΔY
abs(Y1
If Ans≤R
Then
round(25-4Ans/R,0
Pt-On(X,Y,1,Ans-13(Ans=25
End
End
End
- Legoman314
- Member (Posts: 145)
- 25 Jan 2018 08:14:54 pm
- Last edited by Legoman314 on 27 Jan 2018 03:56:05 pm; edited 1 time in total
Tried them out, and Mr. Womp Womp's one gave an ERROR: Bound, and Weregoose's program gave an Invalid Token error when trying to transfer to calc. Any ideas?
- jcgter777
- Super-Expert (Posts: 927)
- 25 Jan 2018 08:15:54 pm
- Last edited by jcgter777 on 25 Jan 2018 08:19:29 pm; edited 1 time in total
You should press Goto when the errors come up, and try fixing them yourself.
I did this to learn Basic, and it helped. You don't need to if you don't want to.
I did this to learn Basic, and it helped. You don't need to if you don't want to.
Legoman314 wrote:
ERROR: Bound
The first part of {E99,E99} ought to be negative.
Legoman314 wrote:
Invalid Token error when trying to transfer to calc. Any ideas?
Must be the ΔX. Type it manually on your calculator with [VARS] [1] [8].
Legoman314 wrote:
Thanks. Any chance of developing these into actual, working programs?
It's not something I plan on doing, however, if you'd like to hammer out some problems and work on it a little, feel free to do so, I'm not very stingy about my code, especially when it's just a little piece like this.
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.
» Go to Registration page
» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Advertisement