www.Jakubas.pl
Stąd można pobrać programy na kalkulator TI89 - ti89.zip - 9kB.

W pliku ti83.zip (po rozpakowaniu) znajdziesz dwie wersje programów:

1. Wersja gotowych programów *.89p do wczytania na kalkulator przy pomocy komputera i programu TI-Graph Link 89

2. Wersja plików tekstowych *.txt (patrz niżej) do przepisania na kalkulatorze.

----- algorytm Euklidesa -----
algorytm(a,b)
Prgm
ClrIO
Disp  "NWD - ALGORYTM EUKLIDESA"
1->r
While  r>0
  mod(a,b)->r
  Disp  string(a)&"="&string(intDiv(a,b))
&"*"&string(b)&"+"&string(r)
  b->a
  r->b
EndWhile
Disp  "NWD="&string(a)
EndPrgm
- zamiana liczby na postać binarną--
bin()
Prgm
ClrIO
Prompt  a
" "->s
While  a>0
  If mod(a,2)=0 Then
     "0"&s->s
  Else
     "1"&s->s
  EndIf
  int(a/2)->a
EndWhile
Disp  s
EndPrgm
--- ciąg harmoniczny -------
ciagharm()
Prgm
For i,1,5,1
    Disp 1/i
EndFor
EndPrgm
---- rzut kostką --------
kostka()
Prgm
ZoomSqr
ClrDraw
For  n,1,6,1
    0->t[n]
EndFor
For  n,1,50,0.1
    rand(6)->los
    t[los]+0.1->t[los]
    Line  los*3-10,t[los]-5,los*3-8.5,t[los]-5
    Line  los*3-8.3,t[los]-5,los*3-7.8,t[los]-4.5

EndFor
EndPrgm
---- dzielenie ------
dziel(licz,mian)
Prgm
ClrIO
Disp string(licz)&"/"&string(mian)&"="
"="&string(intDiv(licz,mian))&"."->s
For n,1,40,1
    mod(licz,mian)*10->licz
    s&string(intDiv(licz,mian))->s
EndFor
Disp s
EndPrgm
----- dzielenie do 175 miejsc po przecinku----
dziel1(licz,mian)
Prgm
ClrIO
Disp  string(licz)&"/"&string(mian)&"="
"="&string(intDiv(licz,mian))&"."->s
For  n,1,175,1
    mod(licz,mian)*10->licz
    s&string(intDiv(licz,mian))->s
    If mod(n,25)=0 Then
       Disp  s
       "     "->s
    EndIf
EndFor
Disp  s
EndPrgm
---- liczba pierwsza --------
pierwsza()
Prgm
ClrIO
Disp  "LICZBA PIERWSZA czy ZLOZONA"
Input  "Podaj liczbe ",a
For  dz,2,int(root(a)),1
    If  mod(a,dz)=0
    Exit
EndFor
If mod(a,dz)=0 Then
   Disp  "liczba zlozona"
Else
   Disp  "liczba pierwsza"
EndIf
EndPrgm
---- sito Eratostenesa -------
sito()
Prgm
ClrIO
Disp  "Sito Eratostenesa"
100->maks
For  n,1,maks,1
    n->t[n]
EndFor
For  n,2,int(root(maks)),1
    For  i,2,int(maks/n),1
        0->t[n*i]
    EndFor
EndFor
""->s
For  n,2,maks,1
    If  t[n]>0
       s&" "&string(t[n])->s
    If dim(s)>24 Then
       Disp  s
       ""->s
    EndIf
EndFor
Disp  s
EndPrgm
---- skracanie ułamków -------
skroc(l,m)
Prgm
ClrIO
string(l)&"/"&string(m)&"="->s
gcd(l,m)->n
l/n->l
m/n->m
Disp s&string(l)&"/"&string(m)
EndPrgm
----- zaba (figury Sierpińskiego)------
zaba()
Prgm
ZoomDec
2/3->s
0->x
0->y
For i,1,100000,1
    rand(6)->l
    x+(4*cos(l*2*pi/6)-x)*s->x
    y+(4*sin(l*2*pi/6)-y)*s->y
    Circle x,y,.1
EndFor
EndPrgm
--- wykresy funkcji --------
wykfun()
Prgm
ZoomSqr
For x,xmin,xmax,.1
    Circle x,sin(x),.1
EndFor
EndPrgm
---- wykresy nierówności ------
wyknier()
Prgm
ZoomSqr
For x,(-)5,5,.2
    For y,(-)5,5,.2
        If sin(x^2+y^2)>0 Then
           Circle x,y,.05
        EndIf
    DelVar EndFor
EndFor
EndPrgm
------------ Gra NIM -----------------
Prgm
ClrIO
Disp  "    G R A    N I M"
setMode("Exact/Approx","AUTO")
0»ruch
rand(9)»t[1]
rand(9)»t[2]
rand(9)»t[3]
While  true
For  m,1,3
t[m]»a
""»s
For  n,1,4
 If mod(a,2)=0 Then
 "0"&s»s
 Else
 "1"&s»s
 EndIf
 int(a/2)»a
EndFor
s»t1[m]
string(t[m])&" "&s»s
For  n,10,1,Ş1
 If nśt[m] Then
 "|"&s»s:Else
 " "&s»s
 EndIf
EndFor
"Wiersz"&string(m)&": "&s»s
Disp  s
EndFor
If ruch=0 Then
Disp  "   Kto rozpoczyna gre:"
Disp  " K-kalkulator, G-gracz"
0»kto
While  ktoť55 and ktoť149
 getKey()»kto
EndWhile
2»ruch
If kto=55 Then: 1»ruch
EndIf
EndIf
If t[1]+t[2]+t[3]=0 Then
If mod(ruch,2)=1 Then
Disp  "  Wygral kalkulator!"
Else
Disp  "  Brawo, wygrales!"
EndIf
Stop
EndIf
If mod(ruch,2)=1 Then
Disp  " Podaj wiersz i ilosc:"
Ş48»w
While  w=Ş48
 getKey()-48»w
EndWhile
Ş48»i
While  i=Ş48
 getKey()-48»i
EndWhile
EndIf
If mod(ruch,2)=0 Then
If ruch>2 Then
Disp  "  K - ruch kalkulatora"
 0»k
 While  k=0
  getKey()»k
 EndWhile
EndIf
 0»w
 0»i
 For  j,1,4
  ord(mid(t1[1],j,1))+ord(mid(t1[2],j,1))
+ord(mid(t1[3],j,1))-144»su
  If su=1 or su=3 Then
  If w=0 Then
  For  r,1,3
   If mid(t1[r],j,1)="1" Then
    r»w
   EndIf
  EndFor
  EndIf
  If mid(t1[w],j,1)="1" Then
  i+2^(4-j)»i
  EndIf
  If mid(t1[w],j,1)="0" Then
  i-2^(4-j)»i
  EndIf
  EndIf
 EndFor
EndIf
If w=0 Then
 1»i
 1»w
 While  t[w]=0
  rand(3)»w
 EndWhile
EndIf
t[w]-i»t[w]
ruch+1»ruch
EndWhile
EndPrgm
- zamiana ułamka zwykłego na okresowy ---
zuzno(licz,mian)
Prgm
ClrIO
string(licz)&"/"&string(mian)&"="->s
Disp  s
gcd(licz,mian)->nwd1
licz/nwd1->licz
mian/nwd1->mian
"="&string(licz)&"/"&string(mian)&"="->s
s&string(factor(licz))&"/
("&string(factor(mian))&")="->s
Disp  s
"="&string(intDiv(licz,mian))&"."->s
mian->mian1
0->i2
While  mod(mian1,2)=0
      i2+1->i2
      mian1/2->mian1
EndWhile
0->i5
While  mod(mian1,5)=0
      i5+1->i5
      mian1/5->mian1
EndWhile
max(i2,i5)->immpao
If  immpao=0
   s&"("->s
1->dlok
9->licz1
While  mod(licz1,mian1)>0
      dlok+1->dlok
      mod(licz1,mian1)*10+9->licz1
EndWhile
For  n,1,150,1
    mod(licz,mian)*10->licz
    s&string(intDiv(licz,mian))->s
    If  immpao=n
       s&"("->s
    If  immpao+dlok=n
       s&")"->s
    If mod(n,25)=0 Then
       Disp  s
       "   "->s
    EndIf
EndFor
Disp  s
EndPrgm
--- gra w bramki (Idź na całość)------
bramki()
Prgm
ClrIO
For  n,1,3,1
    0->t[n]
EndFor
rand(3)->samochod
99->t[samochod]
(C)Disp string(t[1])&"  "&string(t[2])
&"  "&string(t[3])
Input  "Ktora bramke wybierasz ",wybrana
1->t[wybrana]
1->n
While  t[n]>0
  rand(3)->n
EndWhile
n->pusta
1->t[pusta]
Disp  "Bramka nr "&string(pusta)&" jest pusta"
Input  "Czy zmieniasz decyzje t/n",taknie
If taknie=1 Then
   For  n,1,3,1
       If t[n]!=1 Then
          n->wybrana
       EndIf
   EndFor
EndIf
If samochod=wybrana Then
   Disp  "Wygrales!!!"
   Else
   Disp  "Przegrales :(((((((("
EndIf
EndPrgm