TI-BASIC:Optimize Variables
Although it is common to initialize variables for planned use, you should avoid initializing variables that you don't need or that are initialized further down in the program. The reason is because storing to variables really slows a program down (especially inside loops) and there is no point in initializing a variable twice.
:2→A :If B :Then :2→A :Else :-2→A :End can be :If B :Then :2→A :Else :-2→A :End
When a number is used many times in a program, you should store it to a variable and then just call the variable instead of writing it out every time. This also applies to text that should be put in a string.
:Disp "Hello :Disp "Hello :Disp "Hello can be :"Hello→Str1 Disp Str1,Str1,Str1
You can also put common variables or expressions in a string variable and then use the Expr( command to reference them. This can be used in conjunction with other variable commands. This also gives you more variables to use.
:Disp 5int(B/7 :Disp 5int(B/7 can be :"5int(B/7→Str1 :Disp expr(Str1 :Disp expr(Str1
You should reuse variables that have no specific function or that don't need to be saved.
:For(X,1,100 :End :For(Y,1,50 :End can be :For(X,1,100 :End :For(X,1,50 :End
When storing the same large number in two or more variables, you should store the large number in the first variable and then store the first variable into the rest of the variables.
:7112→A :7112→B :7112→C can be :7112→A :A→B :A→C
When calculating several repetitive trigonometric or other math functions in a program, it is sometimes faster to just store the values in a list and recall the values when needed.
:For(A,0,10 :Text(6A+1,1,10cos(A :End can be :10cos(seq(A,A,0,10→L1 :For(A,0,10 :Text(6A+1,1,L1(A :End
Matrices are faster than lists, so you should use them instead, especially if you have 2 lists to store coordinates:
:Pxl-Off(L1(I),L2(I can be :Pxl-Off([A](1,I),[A](2,I
While this is much larger, it is also faster.