home *** CD-ROM | disk | FTP | other *** search
/ RUN Flagazine: Run 2 / run2.zip / LEESBAAR.BAS < prev    next >
BASIC Source File  |  2014-09-03  |  3KB  |  44 lines

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