home *** CD-ROM | disk | FTP | other *** search
- 1 REM BASICODE 2 ROUTINES DOOR HENK WEVERS
- 2 REM NADERE INLICHTINGEN BASICODE
- 3 REM NOS, HOBBYSCOOP HILVERSUM
- 5 PRINT CHR$(26);:WIDTH(255)
- 10 GOTO 1000
- 20 GOTO 1010
- 100 PRINT CHR$(26);:RETURN
- 110 REM
- 111 IF HO>51 THEN HO=51
- 112 IF VE>23 THEN VE=23
- 113 PRINT CHR$(27);"=";CHR$(VE+32);CHR$(HO+32);
- 115 RETURN
- 120 HO=PEEK(&HEF5A):VE=PEEK(&HEF5B)-&HF0
- 121 VE=VE*2
- 122 IF HO>127 THEN HO=HO-128:VE=VE+1
- 123 VE=VE-PEEK(&HEF62):IF VE<0 THEN VE=32+VE
- 124 RETURN
- 200 IN$=INKEY$:RETURN
- 210 GOSUB 200:IF IN$="" THEN 210
- 211 RETURN
- 250 PRINT CHR$(7);:RETURN
- 260 RV=RND(1):RETURN
- 270 FR=FRE(2):RETURN
- 300 SR$=STR$(SR)
- 301 Q7=LEN(SR$):IF Q7=0 THEN RETURN
- 302 IF RIGHT$(SR$,1)<>" " THEN 304
- 303 SR$=LEFT$(SR$,Q7-1):GOTO 301
- 304 IF LEFT$(SR$,1)<>" " THEN RETURN
- 305 SR$=RIGHT$(SR$,Q7-1):GOTO 301
- 310 Q4=SR:IF CN<>0 THEN 316
- 312 SR=INT(SR+.5):GOSUB 300:GOTO 330
- 316 Q5=SGN(SR):SR=ABS(SR):Q8=INT(SR):Q9=SR-Q8
- 318 FOR Q6=1 TO CN:Q9=Q9*10:NEXT Q6
- 320 Q9=INT(Q9+.5):SR=Q9:GOSUB 300
- 322 Q9$=RIGHT$("00000000000000000000"+SR$,CN)
- 324 IF Q8=0 AND Q9=0 THEN Q5=1
- 326 SR=Q8:GOSUB 300:IF Q5=-1 THEN SR$="-"+SR$
- 328 SR$=SR$+"."+Q9$
- 330 IF LEN(SR$)<=CT THEN 334
- 332 SR$=LEFT$("********************",CT):GOTO 340
- 334 SR$=RIGHT$(" "+SR$,CT)
- 340 SR=Q4:RETURN
- 350 LPRINT SR$;:RETURN
- 360 LPRINT:RETURN
- 1000 A=100:GOTO 20:REM RESERVEER STRINGRUIMTE
- 1010 GOSUB 5000
- 1020 GOSUB 100
- 1030 PRINT"Gemeten exacte massa ";:INPUT X
- 1040 PRINT
- 1050 FOR I=1 TO 4
- 1060 PRINT:PRINT
- 1070 PRINT"Element: ";A$(I);" Massa: ";B(I)
- 1080 D(I)=INT((X+.03)/B(I))
- 1090 NEXT I
- 1100 PRINT:PRINT:PRINT
- 1110 PRINT"Maximale afwijking (massa's)";:INPUT W
- 1120 IF W<=.03 THEN 1170
- 1130 PRINT"afwijking te hoog: deze kan maximaal"
- 1140 PRINT"0.03 massa's zijn !"
- 1150 GOTO 1110
- 1160 :
- 1170 GOSUB 100
- 1180 PRINT
- 1190 PRINT"Massa:";X;", Max. afwijking:";W
- 1200 PRINT:PRINT" Massa ";
- 1210 FOR I=1 TO 4
- 1220 PRINT A$(I);" ";
- 1230 NEXT I
- 1240 PRINT"Afwijking"
- 1250 PRINT
- 1260 :
- 1270 R1=0:I1=0
- 1280 R3=R1:I3=0
- 1290 R4=R3:I4=0
- 1300 I2=INT((X-W-R4)/B(2)):IF I2<0 THEN 1370
- 1310 R2=R4+I2*B(2)
- 1320 R=R2
- 1330 :IF R<X-W THEN 1360
- 1340 :IF R>X+W THEN 1370
- 1350 ::GOSUB 2000
- 1360 I2=I2+1:R2=R2+B(2):GOTO 1320
- 1370 IF I4<D(4)THEN I4=I4+1:R4=R4+B(4):GOTO 1300
- 1380 IF I3<D(3)THEN I3=I3+1:R3=R3+B(3):GOTO 1290
- 1390 IF I1<D(1)THEN I1=I1+1:R1=R1+B(1):GOTO 1280
- 1400 :
- 1410 PRINT:PRINT
- 1420 IF T>0 THEN 1450
- 1430 PRINT"Sorry, ik kan bij deze massa geen pas-"
- 1440 PRINT"sende brutoformule vinden!"
- 1450 PRINT"Wilt U nog meer massa's weten (j/n)";:INPUT X$
- 1460 IF X$="n"OR X$="N"THEN END
- 1470 T=0
- 1480 GOTO 1020
- 1490 :
- 2000 REM AFDRUK ROUTINE
- 2010 T=T+1
- 2020 J(1)=I1
- 2030 J(2)=I2
- 2040 J(3)=I3
- 2050 J(4)=I4
- 2060 SR=R:CT=8:CN=4:GOSUB 310:PRINT SR$;
- 2070 FOR K=1 TO 4
- 2080 CT=4:CN=0
- 2090 SR=J(K):GOSUB 310:PRINT SR$;
- 2100 NEXT K
- 2110 SR=R-X
- 2120 CT=10:CN=4:GOSUB 310
- 2130 PRINT SR$
- 2140 RETURN
- 2150 :
- 5000 DIM A$(4),K$(4),B(4),D(4),J(4)
- 5010 GOSUB 100:PRINT:PRINT
- 5020 PRINT
- 5030 PRINT" Bepaling van een BRUTO FORMULE"
- 5040 PRINT
- 5050 PRINT" uit een EXACTE MASSA"
- 5060 PRINT:PRINT
- 5070 PRINT" met de elementen KOOLSTOF,"
- 5080 PRINT
- 5090 PRINT" WATERSTOF, STIKSTOF en ZUURSTOF."
- 5100 HO=0:VE=23:GOSUB 110
- 5110 PRINT"druk op de spatiebalk voor vervolg";
- 5120 GOSUB 210:IF IN$<>" "THEN 5120
- 5130 GOSUB 100
- 5140 PRINT"U vertelt mij de EXACTE massa van de"
- 5150 PRINT:PRINT"verbinding alsmede de maximaal toege-"
- 5160 PRINT:PRINT"stane afwijking (hoogstens 0.03 massa's)"
- 5170 PRINT:PRINT"Ik bereken dan voor U alle mogelijke"
- 5180 PRINT:PRINT"aantallen atomen C, H, N en O waaruit"
- 5190 PRINT:PRINT"Uw verbinding zou kunnen bestaan."
- 5200 HO=0:VE=23:GOSUB 110
- 5210 PRINT"druk op de spatiebalk voor vervolg";
- 5220 GOSUB 210:IF IN$<>" "THEN 5220
- 5230 A$(1)="C":A$(2)="H":A$(3)="N":A$(4)="O"
- 5240 K$(1)="c":K$(2)="h":K$(3)="n":K$(4)="o"
- 5250 B(1)=12:B(2)=1.0078:B(3)=14.0031:B(4)=15.9949
- 5260 RETURN
- 5270 :
- 5280 :
- 5290 :
- 10000 REM" B R U T O F O R M U L E"
- 10010 REM =======================
- 10020 REM
- 10030 REM" Deze versie november 1982.
- 10040 REM" Enigszins veranderd en
- 10050 REM" aangepast voor BASICODE-2
- 10060 REM" door leden van de
- 10070 REM" BASICODE - groep.
- 10080 REM
- 10090 REM
- 10100 REM
- 10110 REM
- 10120 REM" Oorspronkelijke versie uit
- 10130 REM" 1980, ingezonden voor de
- 10140 REM" HOBBYSCOOP - wedstrijd
- 10150 REM
- 10160 REM DOOR:
- 10170 REM
- 10180 REM
- 10190 REM" T. J. S T A M
- 10200 REM =================
- 10210 REM
- REM
- 10160 REM DOOR:
- 10170 REM
- 10180 REM