Erstellt von: Kai Burghardt
Schwierigkeitsgrad: Fortgeschritten
Modell: TI-82, ungetestet

in Bearbeitung, Zwischenergebnisse aber lieber sicherheithalber schon mal einbringen

PROGRAM:ACHAT

 : ClrHome  : FullScreen  : 1 -> X : 1 -> S  : 1 -> Y : 1 -> T  : 1 -> Z : 0 -> U  : 0 -> ₀ : 0 -> V  : {8,16 -> dim [C]  :  : prgmJCHTNMSG  :  :  :

Teilprogramme

PROGRAM:WMTX          // write matrix

 : Repeat M /= 0 // Solange nichts gedrückt wurde  : getKey -> M // M aktualisieren  : End  : L6 (M-10 -> [C](T,S // nehme Wert aus Listenelement M-10

                      // und speichere in die Matrix C
PROGRAM:JCHTNMSG

 : 0 -> M // M als getKey-var initialisieren  : 1 -> S // aktuelles Matrixschreibecursorpaar  : 1 -> T //  : Fill(0,[C]  : While M /= 105  : prgmWMTX  : [C](T,S -> Z // lese soeben geschriebenes Zeichen aus  : prgmINSMWCPS  : If T=2  : prgmFSM1TLRO  : 1 -> T  : prgmRPRTLETH // soeben geschriebenes Zeichen drucken  : prgmINHCURPS  : End  : prgmFSM1TLRO

PROGRAM:INHCURPS

 : IS>(X,16 // inc var X & sto res; if X > 16 then skip next cmd  : Return // solange X =< 16 bleibt, wird Return angesprochen  : 1 -> X  : IS>(Y,8  : Return  : X -> Y // Wofür haben wir denn den Speicher.

PROGRAM:INSMWCPS

 : dim [C] -> L1  : IS>(S,L1(2  : Return  : 1 -> S  : IS>(T,L1(1  : Return  : S -> T

PROGRAM:FSM1TLRO     // swap matrix: first to last row

 : dim [C] -> L1 // wanna get row count  : L1(1 -> A  : While A /= 1 // No lp -> 0 1 2 3  : rowSwap([C],L1( // row 1 [ 42 ] [ 42 ] [ 42 ] [ 88 ]

1),A-1 -> [C]        //        2 [ 88 ] [ 88 ] [ 23 ] [ 23 ]

 : DS<(A,1 // 3 [ 23 ] [ 0 ] [ 0 ] [ 0 ]  : End // 4 [ 0 ] [ 23 ] [ 88 ] [ 42 ]

PROGRAM:RPRTLETH

 : If Z = 32  : Output(Y,X," //ein Leerzeichen hinter "  : If Z = 33  : Output(Y,X,"! //nicht verwirren lassen,dass Tag nicht  : If Z = 34 //geschlossen, wird nämlich nicht angestrichen  : Output(Y,X,""") //sodass mensch hiermit paar Bytes sparen kann

 : If Z = 40 //Insgesamt Eingabevariablen X,Y für Print-  : Output(Y,X,"( //Ort und Z für Zeichen  : If Z = 41  : Output(Y,X,")  : If Z = 42  : Output(Y,X,"*  : If Z = 43  : Output(Y,X,"+  : If Z = 44  : Output(Y,X,",  : If Z = 45  : Output(Y,X,"-  : If Z = 46  : Output(Y,X,".  : If Z = 47  : Output(Y,X,"/  : If Z = 48  : Output(Y,X,"0  : If Z = 49  : Output(Y,X,"1  : If Z = 50  : Output(Y,X,"2  : If Z = 51  : Output(Y,X,"3  : If Z = 52  : Output(Y,X,"4  : If Z = 53  : Output(Y,X,"5  : If Z = 54  : Output(Y,X,"6  : If Z = 55  : Output(Y,X,"7  : If Z = 56  : Output(Y,X,"8  : If Z = 57  : Output(Y,X,"9  : If Z = 58  : Output(Y,X,":  : If Z = 60  : Output(Y,X,"<  : If Z = 61  : Output(Y,X,"=  : If Z = 62  : Output(Y,X,">  : If Z = 63  : Output(Y,X,"?  : If Z = 65  : Output(Y,X,"A  : If Z = 66  : Output(Y,X,"B  : If Z = 67  : Output(Y,X,"C  : If Z = 68  : Output(Y,X,"D  : If Z = 69  : Output(Y,X,"E  : If Z = 70  : Output(Y,X,"F  : If Z = 71  : Output(Y,X,"G  : If Z = 72  : Output(Y,X,"H  : If Z = 73  : Output(Y,X,"I  : If Z = 74  : Output(Y,X,"J  : If Z = 75  : Output(Y,X,"K  : If Z = 76  : Output(Y,X,"L  : If Z = 77  : Output(Y,X,"M  : If Z = 78  : Output(Y,X,"N  : If Z = 79  : Output(Y,X,"O  : If Z = 80  : Output(Y,X,"P  : If Z = 81  : Output(Y,X,"Q  : If Z = 82  : Output(Y,X,"R  : If Z = 83  : Output(Y,X,"S  : If Z = 84  : Output(Y,X,"T  : If Z = 85  : Output(Y,X,"U  : If Z = 86  : Output(Y,X,"V  : If Z = 87  : Output(Y,X,"W  : If Z = 88  : Output(Y,X,"X  : If Z = 89  : Output(Y,X,"Y  : If Z = 90  : Output(Y,X,"Z  : If Z = 91  : Output(Y,X,"[  : If Z = 93  : Output(Y,X,"]  : If Z = 94  : Output(Y,X,"^  : If Z = 123  : Output(Y,X,"{  : If Z = 125  : Output(Y,X,"} 815 Bytes

Daten

Liste6

L6={        0,   0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
       0,  88,  86,  76,  67,  87,   0,   0,   0,   0,
       0,  85,  73,  65,  69,  79,   0,   0,   0,   0,
       0,   0,   0,   0,  80,  90,   0,   0,   0,   0,
       0,  75,  73,  71,  70,  81,   0,  55,  56,  57,
      43,  83,  78,  82,  84,  68,   0,  52,  53,  54,
      44,  66,  77,  44,  46,  74,  58,  49,  50,  51,
       0,   0,  32,  89,   8,   3,   0,   0,   0,   0   }
This article is issued from Wikibooks. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.