10 REM +++++++++++++++++++++++++++++++++ 11 REM ! Program .... TIPSSYS 12 REM ! Utg}va 13 REM ! av (c) Thord Johansson 14 REM ! Minne 16 Kbytes 15 REM ! Ins{nt av 666 16 REM +++++++++++++++++++++++++++++++++ 17 REM 18 REM Red. by The Computer Phantome 19 REM 20 REM * Program f|r R[TTNING av REDUC. LOTTOSYSTEM! Tar fram en UTF\R- LIG s.k. GARANTITABELL... * 21 REM * GARANTITABELLER finns i de fle- sta TIPSB\CKER av n}gorlunda bra kvalitet... * 22 REM * Varje i systemet ing}ende rad f|ruts{ttes ha 7 X (raderna skrivs i sidled). * 23 REM * Hur m}nga RADER resp. garderade NUMMER Ditt system ska ha be- st{mmer Du sj{lv!!! * 24 REM * Kom bara ih}g att 'kryssen' ma- tas in som TV]OR och 'mellan- rummen' (-) som ETTOR! * 25 REM * Allts} {r raden 12211121212221 26 REM * samma som raden -XX---X-X-XXX- 27 REM * GL\M EJ KOLLA TIPSB\CKERNAS 28 REM * GARANTITABELLER MED DINA EGNA! 29 REM * D] VET DU OM DU GJORT R[TT * 30 REM * Ett pgm av JAN EDSTR\M/TORDH H. JOHANSSON (666). * 31 REM * Skriv om Ni skulle 'r}ka' g|ra 32 REM * om programmet i t.ex. FORTRAN. 33 REM * Vill ha SNABBA program... * 34 REM * ADRESSEN {r T.H. Johansson 35 REM * Box 40019 36 REM * 951 04 LULE] 4 37 REM * -------------- 38 REM * OBS! Siffertipsfantast! * 39 REM * H|gst 1/7, 15/6, 31/5 i n}got enskilt 'vinstutfall'!!! * 40 REM * LYCKA TILL! H|r g{rna av Er! * 41 ; CHR$(12%) 42 DIM G%(7),G7%(1023),G6%(511),G5%(31),R%(1000,6),T%(35),A$(35) 43 ; CHR$(12%) : ; "MENY ";STRING$(34%,35%) : ; : ; 44 ; "1. Nytt system..." : ; 45 ; "2. Garantiutr{kning..." : ; 46 ; "3. Utskrift av garantitabell..." : ; 47 ; "4. Utskrift av rader..." : ; 48 ; "5. [ndring av rader..." : ; 49 ; "6. Till{gg av rader..." : ; 50 ; "7. Borttagande av rader..." : ; 51 ; "8. Avslutning!" : ; : ; 52 IF A$<>"1" OR A$<>"2" OR A$<>"3" OR A$<>"4" OR A$<>"5" OR A$<>"6" OR A$<>"7" OR A$<>"8" THEN ON ERROR GOTO 52 53 ; "Vad |nskas"; : INPUT A$ 54 A%=VAL(A$) 55 IF A%>8 OR A%<1 THEN 52 56 ON A% GOTO 112,58,151,190,121,128,134,222 57 REM 58 ; CHR$(12%) : ; "GARANTIUTR[KNING ";STRING$(22%,35%) : ; : ; 59 E1%=0 60 ; "R[TTNINGSF\LJD (EX.: 576, 67, 5...)"; : INPUT F$ 61 E%=LEN(F$) 62 E1%=E1%+1 63 IF E1%>E% THEN 74 64 D%=VAL(MID$(F$,E1%,1)) 65 IF D%>7 OR D%<5 THEN 62 66 REM 67 N1%=N%+1-D% : N2%=N1%+1 : N3%=N2%+1 : N4%=N3%+1 : N5%=N4%+1 : N6%=N5%+1 : N7%=N6%+1 68 REM 69 ; : ; D%;"-kryssrader r{ttas!" 70 ON D% GOTO 74,74,74,74,71,72,73 71 FOR G%=0 TO 31 : G5%(G%)=0 : NEXT G% : GOTO 101 72 FOR G%=0 TO 511 : G6%(G%)=0 : NEXT G% : GOTO 89 73 FOR G%=0 TO 1023 : G7%(G%)=0 : NEXT G% : GOTO 77 74 ; : ; "VALFRI TANGENT! FORTS[TTNING"; 75 INPUT B$ : GOTO 43 76 REM 77 FOR K1%=1 TO N1% : FOR K2%=K1%+1 TO N2% : FOR K3%=K2%+1 TO N3% : FOR K4%=K3%+1 TO N4% : FOR K5%=K4%+1 TO N5% 78 FOR K6%=K5%+1 TO N6% : FOR K7%=K6%+1 TO N7% 79 G%(1)=0 : G%(2)=0 : G%(3)=0 : G%(4)=0 : G%(5)=0 : G%(6)=0 : G%(7)=0 80 T%(K1%)=1 : T%(K2%)=1 : T%(K3%)=1 : T%(K4%)=1 : T%(K5%)=1 : T%(K6%)=1 : T%(K7%)=1 81 FOR X%=1 TO R% 82 P%=T%(R%(X%,0))+T%(R%(X%,1))+T%(R%(X%,2))+T%(R%(X%,3))+T%(R%(X%,4))+T%(R%(X%,5))+T%(R%(X%,6)) 83 G%(P%)=G%(P%)+1 : NEXT X% 84 A%=G%(7)*512+G%(6)*32+G%(5) : G7%(A%)=G7%(A%)+1 85 T%(K1%)=0 : T%(K2%)=0 : T%(K3%)=0 : T%(K4%)=0 : T%(K5%)=0 : T%(K6%)=0 : T%(K7%)=0 86 NEXT K7% : NEXT K6% : NEXT K5% : NEXT K4% : NEXT K3% : NEXT K2% : NEXT K1% 87 GOTO 62 88 REM 89 FOR K1%=1 TO N1% : FOR K2%=K1%+1 TO N2% : FOR K3%=K2%+1 TO N3% : FOR K4%=K3%+1 TO N4% : FOR K5%=K4%+1 TO N5% 90 FOR K6%=K5%+1 TO N6% 91 G%(1)=0 : G%(2)=0 : G%(3)=0 : G%(4)=0 : G%(5)=0 : G%(6)=0 92 T%(K1%)=1 : T%(K2%)=1 : T%(K3%)=1 : T%(K4%)=1 : T%(K5%)=1 : T%(K6%)=1 93 FOR X%=1 TO R% 94 P%=T%(R%(X%,0))+T%(R%(X%,1))+T%(R%(X%,2))+T%(R%(X%,3))+T%(R%(X%,4))+T%(R%(X%,5))+T%(R%(X%,6)) 95 G%(P%)=G%(P%)+1 : NEXT X% 96 A%=G%(6)*32+G%(5) : G6%(A%)=G6%(A%)+1 97 T%(K1%)=0 : T%(K2%)=0 : T%(K3%)=0 : T%(K4%)=0 : T%(K5%)=0 : T%(K6%)=0 98 NEXT K6% : NEXT K5% : NEXT K4% : NEXT K3% : NEXT K2% : NEXT K1% 99 GOTO 62 100 REM 101 FOR K1%=1 TO N1% : FOR K2%=K1%+1 TO N2% : FOR K3%=K2%+1 TO N3% : FOR K4%=K3%+1 TO N4% : FOR K5%=K4%+1 TO N5% 102 G%(1)=0 : G%(2)=0 : G%(3)=0 : G%(4)=0 : G%(5)=0 103 T%(K1%)=1 : T%(K2%)=1 : T%(K3%)=1 : T%(K4%)=1 : T%(K5%)=1 104 FOR X%=1 TO R% 105 P%=T%(R%(X%,0))+T%(R%(X%,1))+T%(R%(X%,2))+T%(R%(X%,3))+T%(R%(X%,4))+T%(R%(X%,5))+T%(R%(X%,6)) 106 G%(P%)=G%(P%)+1 : NEXT X% 107 A%=G%(5) : G5%(A%)=G5%(A%)+1 108 T%(K1%)=0 : T%(K2%)=0 : T%(K3%)=0 : T%(K4%)=0 : T%(K5%)=0 109 NEXT K5% : NEXT K4% : NEXT K3% : NEXT K2% : NEXT K1% 110 GOTO 62 111 REM 112 ; CHR$(12%) : ; "INMATN. AV NYTT SYSTEM ";STRING$(16%,35%) : ; : ; 113 ON ERROR GOTO 113 : ; "ANT. RADER"; : INPUT R% 114 ON ERROR GOTO 114 : ; "ANT. NUMMER"; : INPUT N% : ; : ; 115 FOR X%=1 TO R% 116 GOSUB 202 117 NEXT X% 118 ; : ; "Vill Du [NDRA raderna (J/N)"; : INPUT [$ : IF [$="N" OR [$="n" THEN 43 119 GOTO 122 120 REM 121 ; CHR$(12%) : ; "RAD[NDRING ";STRING$(28%,35%) : ; 122 ON ERROR GOTO 122 : ; "Vilken rad"; : INPUT X% : ; 123 B$="2" : C$="1" : GOSUB 215 124 ; TAB(5-INT(LOG(X%)/LOG(10)));X%;": ";A$ 125 GOSUB 202 126 ; : ; "Fler (J/N)"; : INPUT X$ : IF X$="J" OR X$="j" THEN 122 ELSE 43 127 REM 128 ; CHR$(12%) : ; "TILL[GG AV RADER ";STRING$(22%,35%) : ; : ; 129 R%=R%+1 : X%=R% 130 GOSUB 202 131 ; : ; "Fler (J/N?)"; : INPUT X$ : IF X$="N" OR X$="n" THEN 43 132 ; : GOTO 129 133 REM 134 ; CHR$(12%) : ; "BORTTAGANDE AV RADER ";STRING$(18%,35%) : ; : ; 135 ON ERROR GOTO 135 : ; "Vilken rad"; : INPUT X% : ; 136 B$="2" : C$="1" : GOSUB 215 137 ; TAB(5-INT(LOG(X%)/LOG(10)));X%;": ";A$ 138 ; : ; "Bort (J/N)"; : INPUT X$ 139 IF X$="J" OR X$="j" THEN 141 140 GOTO 43 141 FOR F%=X% TO R% 142 IF F%=R% THEN 147 143 FOR Z%=0 TO 6 144 R%(F%,Z%)=R%(F%+1,Z%) 145 NEXT Z% 146 NEXT F% 147 R%=R%-1 148 ; : ; "Fler (J/N)"; : INPUT X$ 149 IF X$="J" OR X$="j" THEN 135 ELSE 43 150 REM 151 ; CHR$(12%) : ; "GARANTITABELLUTSKRIFT ";STRING$(17%,35%) 152 IF X$<>"P" OR X$<>"p" OR X$<>"S" OR X$<>"s" THEN ON ERROR GOTO 152 : ; : ; "Printer eller sk{rm (P/S)"; : INPUT X$ 153 ; : ; "\nskad f|ljd (ex.: 576, 67, 5...)"; : INPUT F$ 154 ; CHR$(12%) 155 W%=0 156 IF X$="P" OR X$="p" THEN OPEN "PR:" AS FILE 1 : W%=1 157 U1%=0 158 U%=LEN(F$) 159 U1%=U1%+1 160 IF U1%>U% THEN 187 161 U2%=VAL(MID$(F$,U1%,1)) 162 IF U2%>7 OR U2%<5 THEN 159 163 ; #W% : ; #W%,"Gar. vid";U2%;" r{tt:" : ; #W% 164 ; #W%," 7 6 5 Kommer:" 165 ; #W%," ----------- ------" 166 ON U2% GOTO 187,187,187,187,167,168,169 167 G1%=31 : GOTO 170 168 G1%=511 : GOTO 170 169 G1%=1023 170 FOR G%=G1% TO 0 STEP -1 171 IF U2%=7 THEN L%=G7%(G%) : GOTO 174 172 IF U2%=6 THEN L%=G6%(G%) : GOTO 174 173 IF U2%=5 THEN L%=G5%(G%) 174 IF L%=0 THEN 184 175 M1%=INT(G%/512) 176 M2%=INT(G%/32)-M1%*16 177 M3%=G%-M1%*512-M2%*32 178 Q1%=0 179 Q2%=5 : IF M2%>=10 THEN Q2%=4 180 Q3%=10 : IF M3%>=10 THEN Q3%=9 181 Q4%=22-INT(LOG(L%)/LOG(10)) 182 IF W%=0 THEN GET T$ 183 ; #W%,TAB(Q1%);M1%;TAB(Q2%);M2%;TAB(Q3%);M3%;TAB(Q4%);L% 184 NEXT G% 185 ; #W% : ; #W% 186 GOTO 159 187 IF X$="P" OR X$="p" THEN CLOSE 1 188 GOTO 74 189 REM 190 ; CHR$(12%) : ; "RADUTSKRIFT ";STRING$(27%,35%) : ; : ; 191 ; "Printer eller sk{rm (P/S)"; : INPUT X$ : ; 192 B$="X" : C$="-" 193 W%=0 194 IF X$="P" OR X$="p" THEN OPEN "PR:" AS FILE 1 : W%=1 195 FOR X%=1 TO R% 196 GOSUB 215 197 IF W%=0 THEN GET T$ 198 ; #W%,TAB(B%);X%;":";A$ 199 NEXT X% 200 GOTO 187 201 REM 202 B%=5-INT(LOG(X%)/LOG(10)) 203 A%=0 204 ; TAB(B%);X%;":"; 205 INPUT A$ : IF LEN(A$)<>N% THEN 204 206 A1%=0 207 FOR Y1%=1 TO N% 208 IF MID$(A$,Y1%,1)="2" THEN A1%=A1%+1 209 NEXT Y1% : IF A1%<>7 THEN 204 210 FOR Y%=1 TO N% 211 IF MID$(A$,Y%,1)="2" THEN R%(X%,A%)=Y% : A%=A%+1 212 NEXT Y% 213 RETURN 214 REM 215 A$="" 216 FOR Z%=0 TO 6 : A$(R%(X%,Z%))=B$ : NEXT Z% 217 FOR Y%=1 TO N% 218 IF A$(Y%)=B$ THEN A$=A$+B$ ELSE A$=A$+C$ 219 A$(Y%)="" : NEXT Y% 220 B%=5-INT(LOG(X%)/LOG(10)) 221 RETURN 222 END