home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
RUN Flagazine: Run 2
/
run2.zip
/
LEESBAAR.BAS
< prev
next >
Wrap
BASIC Source File
|
2014-09-03
|
3KB
|
44 lines
100 REM LEESBAARHEIDSANALYSE ASCII-TEKSTEN GWBASIC MONO (C) NICO BAAIJENS
110 DATA "Basisonderwijs","Middelbaar onderwijs","Universitair Onderwijs"
120 DIM O$(3):FOR A=1 TO 3:READ O$(A):NEXT A:W=1:COLOR 7,0
130 CLS:KEY OFF:F$="###":G$="####":H$="##.##":I$="###.##### %":COLOR 0,14
140 PRINT SPACE$(80);:LOCATE 1,25:PRINT "Leesbaarheidsanalyse ASCII-tekst"
150 LOCATE 12,1:PRINT SPACE$(80);:LOCATE 25,1:PRINT SPACE$(80);
160 COLOR 7,0:LOCATE 2,1:PRINT CHR$(218)STRING$(78,196)CHR$(191);
170 FOR A=3 TO 10:LOCATE A,1:PRINT CHR$(179):LOCATE A,80:PRINT CHR$(179);:NEXT
180 PRINT CHR$(192)STRING$(78,196)CHR$(217);:LOCATE 3,3:PRINT"Filenaam......: ";
190 LINE INPUT FI$:LOCATE 6,42:PRINT "1=Basisonderwijs (BO)":LOCATE 7,42
200 PRINT "2=Middelbaar (MO)":LOCATE 8,42:PRINT "3=Universitair (UO)"
210 LOCATE 3,42:PRINT "Doelgroep (1, 2 of 3): ";:LINE INPUT DG$
220 D=VAL(DG$):IF D<2 OR D>3 THEN D=1:G=100:LOCATE 3,65:PRINT "BO":GOTO 240
230 LOCATE 3,65:IF D=2 THEN PRINT "MO":G=112 ELSE IF D=3 THEN PRINT "UO":G=118
240 PRINT CHR$(198)STRING$(78,205)CHR$(181);:COLOR 7,0
250 COLOR 0,14:LOCATE 12,27:PRINT "(C)copyright Nico Baaijens";
260 LOCATE 25,25:PRINT "Doelgroep: ";O$(D);:COLOR 7,0
270 LOCATE 6,3:PRINT "Verwerken zin.:":LOCATE 7,3:PRINT "Aantal tekens.:"
280 LOCATE 8,3:PRINT "Aantal woorden:":LOCATE 9,3:PRINT "Aandachtsindex:"
290 LOCATE 4,40:PRINT CHR$(209):FOR A=5 TO 10:LOCATE A,40:PRINT CHR$(179):NEXT A
300 LOCATE 11,40:PRINT CHR$(193):LOCATE 6,42:PRINT "Totaal aantal zinnen.:"
310 LOCATE 7,42:PRINT "Totaal aantal tekens.:":LOCATE 8,42
320 PRINT "Totaal aantal woorden:":LOCATE 9,42:PRINT "Algehele leesbaarheid:"
330 OPEN FI$ FOR INPUT AS 1:LINE INPUT #1,RE$:GOSUB 400:Z=1
340 FOR A=1 TO LEN(RE$):Q=Q+1:Z$=MID$(RE$,A,1):BE$=BE$+Z$:GOSUB 450
350 IF ASC(Z$)=32 THEN W=W+1:LOCATE 15,1:PRINT BE$;
360 IF A>1 THEN IF ASC(Z$)=46 AND ASC(MID$(RE$,A-1,1))<97 AND ASC(MID$(RE$,A-1,1))>64 THEN W=W-2:GOSUB 450:GOTO 380
370 IF ASC(Z$)=46 OR ASC(Z$)=33 OR ASC(Z$)=63 OR ASC(Z$)=59 OR ASC(Z$)=58 THEN GOSUB 410
380 NEXT A:BE$=BE$+CHR$(32):IF NOT EOF(1) THEN LINE INPUT #1,RE$:W=W+1:GOTO 340
390 COLOR 31,0:LOCATE 9,67:PRINT USING H$;(DD/10)/(Z-1):COLOR 7,0:END
400 FOR B=15 TO 23:LOCATE B,1:PRINT SPACE$(80);:NEXT B:RETURN
410 LOCATE 15,1:PRINT BE$:GOSUB 450:DD=DD+D:WW=WW+W:TT=TT+Q:SOUND 1000,1
420 LOCATE 6,66:PRINT USING F$;Z:LOCATE 7,65:PRINT USING G$;TT
430 LOCATE 8,65:PRINT USING G$;WW:LOCATE 9,67:PRINT USING H$;(DD/10)/Z
440 BE$="":Z=Z+1:W=0:Q=0:FOR I=1 TO 2500:NEXT I:GOSUB 400:RETURN
450 D=G-SQR(W*LEN(BE$)):LOCATE 6,19:PRINT USING F$;Z:LOCATE 7,19:IF D<0 THEN D=0
460 PRINT USING F$;Q:LOCATE 8,19:PRINT USING F$;W:IF D>100 THEN D=100
470 LOCATE 9,19:PRINT USING I$;D:RETURN
480 REM /* 37/.6265,3031,3342,5292,3524,3574,4379,4702,4610,4675
490 REM /*/....3623,4038,4180,2930,4227,3170,5024,5201,4415,4853
500 REM /*/....3856,5841,3230,3627,2735,6098,4570,4338,3829,3461
510 REM /*/....4271,3629,4050,3605,4538,3887,2266
520 REM Checksum...............: 152886