10 PRINT "(C) G.OLIVE";:FOR
N=1TO100:NEXT:CLS
20 PRINT CHR$(9);"1)Pese 2)Sol
3)Micro 4)Inte (5) 5)Retour
6)Isoto 7)RMN 8)CI 9)P";
30 A$=INKEY$:IF A$="" THEN 30
40 A=VAL(A$)
50 SET N
60 ON A GOTO 1000,2000,3000,
4000,5000,6000,7000,8000,9000
70 IF A>0THEN 30
900 ERASE A$,A,M$,M,B$,B
999 END
---------------------------------
1000 CLS
1010 PRINT "(4)Determination par
pesee"
1020 INPUT "Masse molaire ",MMMX
1030 INPUT "Coef ",Y
1040 INPUT "Masse en g ",M
1050 INPUT "Volume verse ",V
1060 TX=(M/MMMX)*Y*(1000/V)
1070 SET F4:PRINT "Le titre est
";TX;"M"
1080 GOTO 20
---------------------------------
2000 CLS
2010 PRINT "Determination du titre
par sol. "
2020 INPUT "Titre de la solution
",TX
2030 INPUT "Volume de depart Vx
",VX
2040 INPUT "Coef ",Y
2050 INPUT "Volume verse ",V
2060 T=((TX*V)/1000)*Y*(1000/VX)
2070 SET F4:PRINT "Le titre est
";T;"M"
2080 GOTO 20
---------------------------------
3000 CLS:PRINT"(10)MICRO ANALYSE"
3010 INPUT "Donnez la masse du
compose .....";MMM
3020 INPUT "Donnez le nbre de
constituant ..";NC
3030 INPUT "Donnez le % de C ";C
3040 PRINT C*MMM/1201.11;" de C"
3050 S=C
3060 INPUT "Donnez le % de H ";H
3070 PRINT H*MMM/100.797;" de H"
3080 S=S+H
3090 FOR N=3TONC
3100 PRINT "Donnez le % du n ";N;
3110 INPUT " ";D
3120 INPUT "Donnez sa masse
atomique ";MA
3130 S=S+D
3140 PRINT D*MMM/(MA*100);" de ";N
3150 NEXT
3160 S=100-S
3170 PRINT "%O=";S
3180 PRINT S*MMM/1599.94;" de O"
3190 GOTO 20
---------------------------------
4000 CLS:PRINT "(10)INTEGRATION"
4010 INPUT "Nombre de massif ";NM
4020 INPUT "Nombre de proton ";NP
4030 ERASE A:DIM A(NM)
4040 S=0
4050 FOR N=1TONM
4060 PRINT "Mesure du massif ";N;
4070 INPUT " ";A(N)
4080 S=S+A(N)
4090 NEXT
4100 H=S/NP
4110 FOR N=1TONM
4120 PRINT "Le massif ";N;" compte
";A(N)/H;" protons"
4130 NEXT
4140 GOTO 20
---------------------------------
5000 CLS
5005 PRINT "(7)Dosage par retour"
5010 INPUT "Donnez le titre de la
solution(2)titrante ",TST
5020 INPUT "Donnez le titre du
reactif ",TR
5030 INPUT "Donnez le volume de
reactif ",VR
5040 INPUT "Donnez le coef de la
reaction(3)reactif-sol titrante
(R=1) ",C1
5050 INPUT "Donnez le coef de la
reaction(3)reactif-inconnue (R=1)
",C2
5060 INPUT "Donnez le volume d'
inconnu ",VX
5070 INPUT "Donnez le vol. sol.
titrante ",VST
5080 NMR=VR*TR/1000
5090 NMST=VST*TST/1000
5100 NMRR=NMR-NMST/C1
5110 NMI=NMRR*C2
5120 TX=NMI*1000/VX
5130 SET F4:PRINT "Le titre est
";TX;"M"
5140 GOTO 20
----------------------------------
6000 CLS:RESTORE 6980
6005 PRINT "(8) % PIC ISOTOPIQUE
(8)";
6010 ERASE A$,A:DIM A$(11),A(11,4)
6020 FOR N=1TO11:READ A$(N),A(N,1)
,A(N,2),A(N,3),A(N,4):NEXT
6030 INPUT "Formule brute ";FB$
6040 NDC=0:FLAG=0
6050 FOR N=1 TO LEN(FB$)
6060 IF MID$(FB$,N,1)<"A" AND
FLAG=0 THEN NDC=NDC+1:FLAG=1
6070 IF MID$(FB$,N,1)>"9" AND
FLAG=1 THEN FLAG=0
6080 NEXT
6090 ERASE M:DIM M(NDC,2)
6100 AT$=LEFT$(FB$,1):FLAG=0:NDA=1
6110 FOR N=2 TO LEN(FB$)
6120 IF MID$(FB$,N,1)<"A" AND
FLAG=0 THEN GOTO 6950
6130 IF MID$(FB$,N,1)>"9" AND
FLAG=1 THEN M(NDA,2)=VAL(AT$):
FLAG=0:NDA=NDA+1:AT$=""
6140 AT$=AT$+MID$(FB$,N,1)
6150 NEXT N
6160 IF FLAG=0 THEN PRINT
"***ERREUR***":GOTO 20 ELSE
M(NDA,2)=VAL(AT$)
6170 MM=0:MMR=0
6180 FOR N=1 TO NDC
6190 MM=MM+M(N,2)*A(M(N,1),1)
6195 MMR=MMR+M(N,2)*A(M(N,1),4)
6200 NEXT
6210 M1=0
6220 FOR N=1 TO NDC
6230 M1=M1+M(N,2)*A(M(N,1),2)
6240 NEXT
6250 M2=0
6260 FOR N=1 TO NDC
6270 M2=M2+(M(N,2)*A(M(N,1),2))^2
/200+M(N,2)*A(M(N,1),3)
6280 NEXT
6290 NDN=0
6300 FOR N=1 TO NDC
6310 IF A(M(N,1),1)=14 THEN NDN=NDN
+M(N,2)
6320 NEXT
6350 IF INT(NDN/2)=NDN/2 THEN IF
INT(MM/2)=MM/2 THEN R$=".+" ELSE
R$="+"
6360 IF INT(NDN/2)<>NDN/2 THEN IF
INT(MM/2)=MM/2 THEN R$="+" ELSE
R$=".+"
6370 CLS:PRINT FB$;":";R$;TAB(18);
6380 SET F2:PRINT "MPM=";MM;
CHR$(13);"%M+1=";M1;TAB(18);"%M+2=";M2
6390 SET F3:PRINT FB$;TAB(18);
"MMR="; MMR;CHR$(13);
6400 FOR N=1 TO NDC
6410 PRINT "%";A$(M(N,1));"=";
M(N,2)*A(M(N,1),4)/MMR*100;"%"
6420 NEXT
6900 GOTO 20
6950 FOR I=1TO11
6955 IF AT$=A$(I) THEN M(NDA,1)=I
6960 NEXT I
6965 IF M(NDA,1)=0 THEN PRINT
"***ERREUR*** SEUL";CHR$(13);:FOR
N=1TO11:PRINT A$(N);" ";:NEXT:PRINT
"#":GOTO 20
6970 AT$="":FLAG=1:GOTO 6130
6980 DATA H,1,0.016,0,1.00797
6981 DATA C,12,1.08,0,12.011
6982 DATA N,14,0.38,0,14.0067
6983 DATA O,16,0.04,0.20,15.9994
6984 DATA F,19,0,0,18.99840
6985 DATA SI,28,5.10,3.35,28.086
6986 DATA P,31,0,0,30.97376
6987 DATA S,32,0.78,4.40,32.06
6988 DATA CL,35,0,32.5,35.453
6989 DATA BR,79,0,98,79.904
6990 DATA I,127,0,0,126.9045
---------------------------------
7000 CLS:PRINT "1)METHANE
2)BENZENE (12)";
7005 CH$=INKEY$:IF CH$=""THEN 7005
7010 CH=VAL(CH$):PRINT "*";
7015 ON CH GOTO 7050,7200
7020 GOTO 20
7050 ERASE A$:DIM A$(4,2)
7055 ERASE M$,M:DIM M$(17),M(17):
RESTORE 7150
7060 FOR N=1TO17:READ M$(N),M(N):
NEXT
7065 FOR N=1TO4:PRINT "SUBSTITUANT
";N;:INPUT ">";A$(N,1):NEXT
7070 FOR N=1TO4:FLAG=0
7075 FOR M=1TO17
7080 IF A$(N,1)=M$(M)THEN A$(N,2)=
STR$(M):FLAG=1
7085 NEXT M
7090 IF FLAG=0THEN PRINT A$(N,1);
" INCONNU":GOTO 20
7095 NEXT N
7100 FOR N=1TO4
7105 IF A$(N,1)="H" THEN 7120
7110 NEXT N
7115 PRINT "MOLECULE SANS PROTON
":GOTO 20
7120 D=.23
7125 FOR M=1TO4
7130 D=D+M(VAL(A$(M,2)))
7135 NEXT M
7140 PRINT "DELTA=";D;" ppm":
GOTO 20
7150 DATA H,0,CL,2.53,BR,2.33
7151 DATA I,1.82,NRR,1.57,OR,2.36
7152 DATA SR,1.64,CRO,1.70,CRCRR,
1.32,CCH,1.44,CN,1.70,CH3,0.47
7153 DATA
PH,1.85,OH,2.56,OCOR,3.13,COOR,1.55
,CF3,1.14
7200 ERASE A$:DIM A$(6,2)
7205 ERASE B$,B:DIM B$(28),B(28
,3): RESTORE 7290
7210 FOR N=1TO28:READ B$(N),B(N,
1),B(N,2),B(N,3): NEXT
7215 FOR N=1TO6:PRINT "SUBSTITUANT
";N;:INPUT ">";A$(N,1):NEXT
7220 FOR N=1TO6:FLAG=0
7225 FOR M=1TO28
7230 IF A$(N,1)=B$(M)THEN A$(N,2)=
STR$(M):FLAG=1
7235 NEXT M
7240 IF FLAG=0THEN PRINT A$(N,1);
" INCONNU":GOTO 20
7245 NEXT N
7250 IF A$(1,1)="H"THEN PRINT
"H1=";7.27+B(VAL(A$(2,2)),1)+
B(VAL(A$(3,2)),2)+B(VAL(A$(4,2)),3)
+B(VAL(A$(5,2)),2)+B(VAL(A$(6,2)),1)
7255 IF A$(2,1)="H"THEN PRINT
"H2=";7.27+B(VAL(A$(1,2)),1)+
B(VAL(A$(3,2)),1)+B(VAL(A$(4,2)),2)
+B(VAL(A$(5,2)),3)+B(VAL(A$(6,2)),2)
7260 IF A$(3,1)="H"THEN PRINT
"H3=";7.27+B(VAL(A$(1,2)),2)+
B(VAL(A$(2,2)),1)+B(VAL(A$(4,2)),1)
+B(VAL(A$(5,2)),2)+B(VAL(A$(6,2)),3)
7265 IF A$(4,1)="H"THEN PRINT
"H4=";7.27+B(VAL(A$(1,2)),3)+
B(VAL(A$(2,2)),2)+B(VAL(A$(3,2)),1)
+B(VAL(A$(5,2)),1)+B(VAL(A$(6,2)),2)
7270 IF A$(5,1)="H"THEN PRINT
"H5=";7.27+B(VAL(A$(1,2)),2)+
B(VAL(A$(2,2)),3)+B(VAL(A$(3,2)),2)
+B(VAL(A$(4,2)),1)+B(VAL(A$(6,2)),1)
7275 IF A$(6,1)="H"THEN PRINT
"H6=";7.27+B(VAL(A$(1,2)),1)+
B(VAL(A$(2,2)),2)+B(VAL(A$(3,2)),3)
+B(VAL(A$(4,2)),2)+B(VAL(A$(5,2)),1)
7280 PRINT "*TERMINE":GOTO 20
7290 DATA NO2,.95,.17,.33,CHO,.58,
.21,.27,COCL,.83,.16,.3
7291 DATA COOH,.8,.14,.2,COOCH3,
.74,.07,.2,COCH3,.64,.09,.3
7292 DATA CN,.27,.11,.3,PH,.18,0,
.08,CCL3,.8,.2,.2,CHCL2,.1,.06,.1
7293 DATA CH2CL,0,.01,0,ME,-.17, -
.09,-.18,ET,-.15,-.06,-.18
7294 DATA IPR,-.14,-.09,-.18,IBU,
.01,-.1,-.24,CH2OH,-.1,-.1,-.1
7295 DATA CH2NH2,0,0,0,F,-.3,-
.02,-.22,CL,.02,-.06,-.04
7296 DATA BR,.22,-.13,-.03,I,.4,-
.26,-.03,OME,-.43,-.09,-.37
7297 DATA OCOME,-.21,-.02,0,OH,-
.5,-.14,-.4,NH2,-.75,-.24,-.63
7298 DATA SME,-.03,0,0,NME2,-.6,-
.1,-.62,H,0,0,0
---------------------------------
8000 CLS:PRINT " NOMBRE DE CENTRE
D'INSATURATION";
8010 INPUT "NBRE C";NC
8020 INPUT "NBRE H";NH
8030 INPUT "NBRE O";NO
8040 INPUT "NBRE N";NN
8050 INPUT "NBRE X";NX
8060 NTC=NC+NO+NN:NCH=NTC*2+2
8070 NTH=NH+2*NO+NN+NX
8080 CI=(NCH-NTH)/2
8090 PRINT "C";NC;"H";NH;"O";NO
;"N";NN;"X";NX;" contient ";CI;"
CI";
8100 GOTO 20
---------------------------------
9000 CLS:PRINT "(4)CORRECTION DE
PRESSION"
9010 INPUT "P lue (mmHg)";H
9020 BETA=1.85E-5:INPUT "á (1.85E-
5 LAITON:0 PAPIER)";BETA$:IF BETA$
<>""THEN BETA=VAL(BETA$)
9030 INPUT "T (øC)";T
9040 PRINT
"Hú=";H*(1+BETA*T)/(1+1.83E-4*T)
9050 GOTO 20
---------------------------------
               (
geocities.com/tokyo)