1 REM +++++++++++++++++++++++++++++++++ 2 REM ! Program .... BTGSANA 3 REM ! Utg}va 1.1 810101 4 REM ! av ELO521 5 REM ! {ndrat av ELO 6 REM ! Copyright BM-CTH 7 REM ! Minne 16 Kbytes f|r flexskiva 8 REM ! Ins{nt av ELO 9 REM +++++++++++++++++++++++++++++++++ 10 REM Ber{knar siktkurva av sand och stenmaterial 11 REM Vid k|rning av grafen ber{knas materialets finhetsmodul 100 A=16 : S%=-1% 101 ; INP(3)CHR$(12%) 102 ; ' ****************************' 103 ; ' * *' 104 ; ' * SIKTANALYS Ver.1.1 ELO *' 105 ; ' * *' 106 ; ' ****************************' : ; : ; 107 ; 'Programmet kan hantera Max.10 kurvor' : ; 108 ; 'Ange akumulerade vikter i gram' : ; : ; 109 ; CUR(12%,5%)'MATA IN ---(1)' 110 ; CUR(13%,5%)'H[MTA ---(2)' 111 ; CUR(14%,5%)'GRAF ---(3)' 112 ; CUR(16%,5%)'MIXA ---(4)' 113 ; CUR(17%,5%)'PRINT ---(5)' 114 ; CUR(18%,5%)'LAGRA ---(6)' 115 ; CUR(20%,5%)'SLUT ---(0)' 116 ; CUR(22%,5%)A$ 117 A$=STRING$(30%,32%) 118 ONERRORGOTO 101 119 GET G$ 120 IF VAL(G$)=0% ; CHR$(12%)'SLUT F\R DENNA G]NG' : END 121 IF VAL(G$)<0% GOTO 101 122 IF VAL(G$)>6% GOTO 101 123 ON VAL(G$) GOSUB 125,134,144,171,185,193 124 GOTO 101 125 N%=S%+1% : ; : ; : ; 'PROV NR:'N%+1% : FOR M%=0% TO 8% 126 ONERRORGOTO 133 : IF M%=8% THEN S=0 ELSE S=A/2%^M% 127 ; 'M{ngd > sikt 'S' mm'; : INPUT B(M%,N%) : IF B(M%,N%)79% THEN K%=79% 166 SETDOT R%,K% 167 K%=K%+1% 168 NEXT I% : NEXT M% : F(N%)=INT((F+A(0%,N%)/2%)/5)/100 169 ; CUR(21%,0%)' PROV NR:'N%+1%' FINHETSMODUL='F(N%)' ' 170 GET G$ : NEXT N% : RETURN 171 ONERRORGOTO 171 172 ; 'Ange Prov A nr:'; : INPUT N1% 173 IF N1%<1% OR N1%>S%+1% GOTO 172 174 ; 'Ange andel Prov A i %'; : INPUT P% 175 IF P%<0% OR P%>100% GOTO 174 176 ; 'Ange Prov B nr:'; : INPUT N2% 177 IF N2%<1% OR N2%>S%+1% GOTO 176 178 P1=P%/100 : P2=1-P1 179 N%=S%+1% : N1%=N1%-1% : N2%=N2%-1% 180 FOR I%=0% TO 8% 181 A(I%,N%)=P1*(50-A(I%,N1%))+P2*(50-A(I%,N2%)) 182 NEXT I% : S%=N% 183 A$='Blandkurva A+B har nummer '+NUM$(S%+1%) 184 GOSUB 202 : RETURN 185 OPEN 'PR:' ASFILE 1 186 ; #1,' *** SIKTANALYS ***' : ; #1 : ; #1 187 FOR N%=0% TO S% 188 ; #1,' PROV NR: 'N%+1% 189 FOR M%=0% TO 8% 190 ; #1,' '.125*2%^M%; : ; #1,TAB(15%)INT(A(M%,N%)*2%) 191 NEXT M% : ; #1,' FINHETSMODUL='F(N%) : ; #1, : ; #1 : NEXT N% 192 CLOSE 1 : RETURN 193 ONERRORGOTO 201 194 ; 'S[TT FILNAMN'; : INPUT F$ 195 PREPARE F$ ASFILE 2 196 ; 'ANGE PROVNUMMER'; : INPUT N% 197 IF N%<1% OR N%>S%+1% GOTO 196 198 FOR I%=0% TO 8% 199 ; #2,A(I%,N%-1%) 200 NEXT I% 201 CLOSE 2 : RETURN 202 REM * PROP-BER * 203 FOR M%=0% TO 8% 204 IF A(M%,N%)>A(M%+1%,N%) THEN A(9%,N%)=A(M%,N%) 205 NEXT M% 206 REM * 50-ST[LL * 207 FOR M%=0% TO 8% 208 A(M%,N%)=50%-A(M%,N%)/A(9%,N%)*50 209 NEXT M% : RETURN