Sharp PC1360 Taschencomputer
 

 Sharp PC1360

Adressdatenbank und Organizer

Teilprogramm 5 - Listing


Dokumentation ansehen
Listing Teil 1, ADBCHN.BAS
Listing Teil 2, GRAPHCHN.BAS
Listing Teil 3, STATCHN.BAS
Listing Teil 4, PFLEGCHN.BAS
Listing Teil 6, TRANSCHN.BAS
Listing Teil 7, CRYPTCHN.BAS
Programmspeicher-Image laden (1)
Programmspeicher-Image laden (2)
Programmspeicher-Image laden (3)
Programmspeicher-Image laden (4)
Programmspeicher-Image laden (5)
Programmspeicher-Image laden (6)
Programmspeicher-Image laden (7)


70 GOSUB 7490 :CHAIN "X:ADBCHN.PRG",70
260 POKE 12348,16:CLEAR A:B=G
270 P=S(0,L):IF M$(0)<D$(P,L) LET R=0:RETURN
280 R=INT ((A+B)/2)
290 P=S(R,L)
300 IF D$(P,L)=M$(0) GOTO 340
310 IF B-A=1 LET R=R+1:P=S(R,L):RETURN
320 IF D$(P,L)<M$(0) LET A=R:GOTO 280
330 B=R:GOTO 280
340 IF R IF D$(S(R-1,L),L)=M$(0) LET R=R-1:P=S(R,L):GOTO 340
350 RETURN
370 L=2:CLEAR A:B=G:IF M$(0)="" CLEAR U,V:GOTO 400
380 U=VAL LEFT$ (M$(0),2):V=VAL MID$ (M$(0),4,2):W=1900:GOSUB 490
390 IF F5 GOSUB 6510 :GOTO 360
400 W=U+V*31
410 P=S(0,2):IF W<VAL LEFT$ (D$(P,5),2)+31*VAL MID$ (D$(P,5),4,2) LET R=0:RETURN
420 R=INT ((A+B)/2):P=S(R,2):H=VAL LEFT$ (D$(P,5),2)+31*VAL MID$ (D$(P,5),4,2)
430 IF H=W GOTO 470
440 IF B-A=1 LET R=R+1:P=S(R,L):RETURN
450 IF H<W LET A=R:GOTO 420
460 B=R:GOTO 420
470 IF R LET H=S(R-1,2):IF VAL LEFT$ (D$(H,5),2)+31*VAL MID$ (D$(H,5),4,2)=W LET P=H:R=R-1:GOTO 470
480 RETURN
2410 GOSUB 7490 :CHAIN "X:PFLEGADB.CHN",2410
3410 IF F7 OR F6>=G GOTO 3690
3420 IF F6 GOTO 3470
3430 RESTORE 3450 :GOTO 7290
3450 DATA 1,"Keine neuen Daten !"
3460 DATA 2,"Sortieren",3690,"DATENPFLEGE",2410,"MENU",70
3470 USING "####":PRINT 0;" % einsortiert":D=3*F6:Z=0
3480 FOR I=F6 TO 1STEP -1
3490 FOR L=0 TO 2
3500 M$(0)=D$(G-I+1,L):IF L=2 LET M$(0)=LEFT$ (D$(G-I+1,5),5):GOSUB 370 :GOTO 3520
3510 GOSUB 260
3520 ON L GOTO 3530 ,3550
3530 IF D$(P,L)=M$(0) GOTO 3630
3540 GOTO 3560
3550 IF LEFT$ (D$(P,5),5)=M$(0) GOTO 3650
3560 FOR J=G-I TO R STEP -1:S(J+1,L)=S(J,L):NEXT J
3570 S(R,L)=G-I+1
3580 Z=Z+1:CURSOR 0,0:PRINT Z/D*100
3590 NEXT L:NEXT I
3600 CLEAR F6:USING
3610 IF F8 GOTO 4180
3620 GOTO 40
3630 IF D$(P,NOT L+2)<D$(G-I+1,NOT L+2) LET R=R+1:P=S(R,L):IF R<G GOTO 3530
3640 GOTO 3560
3650 IF D$(P,0)<D$(G-I+1,0) LET R=R+1:P=S(R,L):IF R<G GOTO 3550
3660 GOTO 3560
3670 E=0:G=-1:F9=1:GOSUB 4480 :CLEAR F6,F9
3680 CLS :PRINT "Bitte Daten eingeben !":GOSUB 6300 :GOTO 2460
3690 D=3*(G+1)^2:Z=0:USING "####.#":PRINT 0;" % sortiert
3710 FOR L=0 TO 1:FOR I=0 TO G:K=0:FOR J=0 TO G
3720 IF D$(J,L)<=D$(I,L) LET K=K+1:IF D$(I,L)=D$(J,L) GOSUB 3830
3730 Z=Z+1:CURSOR 0,0:PRINT Z/D*100
3740 NEXT J:S(K,L)=I:NEXT I:NEXT L
3750 FOR I=0 TO G:K=0:FOR J=0 TO G
3760 U=VAL MID$ (D$(I,5),4,2)*31+VAL LEFT$ (D$(I,5),2)
3770 V=VAL MID$ (D$(J,5),4,2)*31+VAL LEFT$ (D$(J,5),2)
3780 IF V<=U LET K=K+1:IF U=V GOSUB 3830
3790 Z=Z+1:CURSOR 0,0:PRINT Z/D*100
3800 NEXT J:S(K,2)=I:NEXT I
3810 USING :CLEAR F7,F6:IF F8 GOTO 4180
3820 GOTO 40
3830 O=-1:K=K-1:IF I=J RETURN
3840 O=O+1:IF O=4 GOSUB 3880 :RETURN
3850 IF D$(I,O)=D$(J,O) GOTO 3840
3860 IF D$(J,O)<D$(I,O) LET K=K+1
3870 RETURN
3880 IF I<J LET K=K+1
3890 IF L OR I>J RETURN
3900 BEEP 1,255,200
3910 CLS :PRINT "Doppelter Datensatz:":GOSUB 6300
3920 P=I:GOSUB 690
3930 PRINT " % sortiert":CURSOR 0,0:PRINT Z/D*100
3940 RETURN
7290 CLS :READ F0:IF F0 READ M$(0):PRINT M$(0)
7300 X=0:Y=F0:READ N:Q=INT (N/(4-F0)):S=16-4*Q
7310 FOR I=0 TO N:J=INT (I/(4-F0)):CURSOR J*S,I-(4-F0)*J+F0:READ M$(0),Z(I)
7320 PRINT " ";LEFT$ (M$(0),S+6-8*SGN Q):NEXT I
7330 K=Y-F0+(4-F0)*X:IF K>N LET X=Q:Y=F0+N-(4-F0)*X:K=N
7340 CURSOR X*S,Y:PRINT "->"
7350 T=ASC INKEY$ :IF T=0 GOTO 7350
7360 BEEP 1,1,25
7370 IF T=5 CURSOR X*S,Y:PRINT " ":Y=Y+1:IF Y>3 LET Y=F0:X=X+1:IF X>Q CLEAR X
7380 IF T=4 CURSOR X*S,Y:PRINT " ":Y=Y-1:IF Y<F0 LET Y=3:X=X-1:IF -X CLEAR X
7390 IF T=14 CURSOR X*S,Y:PRINT " ":X=X+1:IF X>Q CLEAR X
7400 IF T=15 CURSOR X*S,Y:PRINT " ":X=X-1:IF X<0 LET X=Q
7410 IF T=13 CLS :CLEAR X,Y:GOTO Z(K)
7420 GOTO 7330
7490 RESTORE 7500 :GOTO 7290
7500 DATA "Externer Programmteil !",1,"CE-140F o.k.",7510,"Abbruch",7520
7510 RETURN
7520 CLS :END


Dokumentation ansehen
Listing Teil 1, ADBCHN.BAS
Listing Teil 2, GRAPHCHN.BAS
Listing Teil 3, STATCHN.BAS
Listing Teil 4, PFLEGCHN.BAS
Listing Teil 6, TRANSCHN.BAS
Listing Teil 7, CRYPTCHN.BAS
Programmspeicher-Image laden (1)
Programmspeicher-Image laden (2)
Programmspeicher-Image laden (3)
Programmspeicher-Image laden (4)
Programmspeicher-Image laden (5)
Programmspeicher-Image laden (6)
Programmspeicher-Image laden (7)



Zur Übersichtstabelle



Home
Falls diese Seite ohne Navigationsleiste angezeigt wird, aktivieren Sie Javascript oder klicken Sie hier!