E-mail Webmaster

_____________
Navigation

Home
________________
Recent Additions

Frank's Letters

________________
English Section

Math Tutorials

TI Graphing Calculators
Mobile Phones & Pads


TI Program Descriptions

TI Programs
TI Programming Keystrokes

Python Programs

Brief User Guides

TI-82 User Manual
TI-83+ User Guide

TI-89 User Guide

Statistics

TI-82 Statistics
TI-83 Plus Statistics
TI-84 Statistics
TI-89 Statistics

Other Topics
TI-83Plus Finite Math
TI-83 Plus Finance Math
TI-83 Plus Busines & Economics
TI-83 Plus Lin Prog
TI-83 Plus Geometry
TI-84 Conics APP
TI89 Calc Dif Eq
TI-89 Finance
Arithmetic of  Lists
TI-89t Busines & Economics

TI FAQs

For Beginners
More Detailed Page 1
More Detailed Page 2
TI-89 FAQs

Links to  Guidebooks by TI
TI-82
TI-83 Plus

Casio Graphing    Calculator

Casio Program Descriptions

Casio Programs
CFX-9850 & CFX-9750

Brief  Guides

CFX-9850 & CFX-9750
User Manual

Statistics Guide

Casio Programming Keystrokes
________________
Brief Guides Other Calculators
HP 43S Calculator

Scientific Calculators
FAQs for Scientific Calculators

===============

Sección Española

FAQs en Español
FAQs Basicos
Mas Dificil Pagina 1
Mas Dificil Pagina 2

Guías en Espaňol
TI-82 Espanol
TI-82 Estidisticas
TI-83 Plus Espanol
TI-83 Plus Estidisticas
TI-83 Plus Guía Financiera
TI-89 Titanium Guía
TI-89 Estidisticas
TI-89 Guía Financiera

 

Casio Calculadoras

Breve Guía Español
Cfx-9850 & Cfx-9750

Casio FAQs en Espanol

Calculadoras Científicos

FAQs en Espanol
________________
Links
Programs at Other Sites

Links to Tutorials

  

TI-82 Gauss & Gauss Jordan Elimination (rref & ref)

Application:  Notice that this program is not listed for the TI-83 Plus. It will work for the TI-83, but since rref and ref are built in on the TI-83, there is no need for it.

Memory usage:  This program uses 547 bytes of memory.  I estimate that an inexperienced programmer can enter it in about 25 to 30 minutes.

Running the Program: First store your matrix in position [A]. After starting the program, a menu is presented that allows selection of either rref or ref.   As usual with matrices, I recommend that when you enter a new matrix, you enter each element, rather than just replacing those that are different.  The answer is displayed in fractions.  Engineering and science students and others who prefer decimals, just look at matrix [B].  The fractional answer is not stored in a matrix; only displayed on the home screen. 

Comments: This program operates similar to the ref and rref functions on the TI-83 in that in some instances inconsistent or dependent equations will give a "divide by zero" error for the rref function. You can usually see what the problem is if you use ref. I've checked this version, 1.12, out on about 30 different matrices, but if you have any problems, please send an e-mail to me, the Webmaster.  I would also appreciate any suggestions you might have for improving the coding.   STCC students, please e-mail me at: fkizer@southwest.tn.edu

Revisions:  Version V1.0, date 8/23/03.  Version V1.1, date 12/13/04.  Version V1.2, 10/7/04.  There are some fairly significant changes from V1.1 to V1.2.  The working matrix has been changed from [A] to [B], and several lines have been added at the end to correct for the annoying characteristic the TI-82 has of displaying a number such as 1.2E-14 for 0.

CODE ENTRY

KEYSTROKES

NOTES

Disp "V1.2 FKIZER"

PRGM; I/O; 3

2nd ALPHA (Enter Text)

 

Lbl 0

PRGM; CTL; 9

 

0→J:0→K

 

Initialize

dim ([A])→ L1

 

Gets dimension of matrix [A].

L1(1)→ R

 

 

L1(2)→ C

 

 

If C ≠ R+1

 

Checks if augmented.

Then    

Disp "INVALID MATRIX"

 

 

Stop    
End    

[A]→[B]

 

For use with STRT OVR and reduces error propagation.

For (K,1, C-2)

PRGM; 4;

First For( loop.

0→N    

For (J,K,R)

 

Sort to get 1 in a11 position.

If [B](K,K)≠ 1 and [B](J,K)=1

 

 

Then

 

 

rowSwap([B],J,K)→[B]

 

Stores rowswap in matrix [A].

N+1→N

 

Indicates if 1 is found.

Else

 

If no "1", look for non-zero.

If [B](K,K)=0 and [B](J,K)≠ and N=0

 

 

Then

 

 

rowSwap([B],J,K,)→[B]

 

 

End: End: End:

 

 

For(J,K+1,R)

 

For( loop for reduction.

If [B](K,K)≠ 0    
Then    

-[B](J,K)/[B](K,K)→H

 

Multiplier for row operation.

If H≠0

 

 

Then

 

 

*row+(H,[B],K,J)→[B]

 

Do row operation.

End:End:End:End

 

 

Menu("SELECT","RREF",1,"REF",2,"STRT OVR",3)

 

 

Lbl 1

 

Starts elimination after ref.

R→L

 

 

For(K, C-1,2,-1)

 

Decrements loop counter.

For(J,R-1,1,-1)

 

 

If [B](K,K)≠0   Minimize div by zero errors.
Then    

-[B](J,K)/[B](K,K)→P

 

Multiplier for row operation.

*row+(P,[B],K,J)→[B]

 

 

End:End

 

 

R-1→R

 

Decrement R.

End

 

 

Lbl 2

 

Starts reducing major diagonal to 1s.

For(K,1,C-1)

 

 

If [B](K,K)≠0   Minimize div by zero errors.
Then    

1/[B](K,K)→T

 

Divisor stored in variable T.

*row(T,[B],K)→[B]

 

 

End:End

 

 

ClrHome   Clear Screen
L-->R    
For(J,1,R)    
For(K,1,C)    
If abs([B](J,K)≤1.0E-9   E is 2nd, EE
Then    
0→[B](J,K)    
End:End:End    

Pause  [B]►Frac

 

Converts decimals to fractions

Stop

 

End of ref and rref.

Lbl 3

 

Object of STRT OVR in menu.

Goto 0

 

 


Revised: 10/7/04