Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
47
Task/Function-frequency/BBC-BASIC/function-frequency.basic
Normal file
47
Task/Function-frequency/BBC-BASIC/function-frequency.basic
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
INSTALL @lib$+"SORTLIB"
|
||||
Sort% = FN_sortinit(1,0) : REM Descending
|
||||
|
||||
Valid$ = "0123456789@ABCDEFGHIJKLMNOPQRSTUVWXYZ_`abcdefghijklmnopqrstuvwxyz"
|
||||
DIM func$(1000), cnt%(1000)
|
||||
nFunc% = 0
|
||||
|
||||
file% = OPENIN("*.bbc")
|
||||
WHILE NOT EOF#file%
|
||||
ll% = BGET#file%
|
||||
no% = BGET#file% + 256*BGET#file%
|
||||
INPUT #file%, l$
|
||||
|
||||
i% = 1
|
||||
REPEAT
|
||||
j% = INSTR(l$, CHR$&A4, i%) : REM Token for 'FN'
|
||||
k% = INSTR(l$, CHR$&F2, i%) : REM Token for 'PROC'
|
||||
IF k% IF j%=0 OR j%>k% THEN
|
||||
i% = k%
|
||||
f$ = "PROC"
|
||||
ELSE
|
||||
i% = j%
|
||||
f$ = "FN"
|
||||
ENDIF
|
||||
IF i% THEN
|
||||
REPEAT
|
||||
i% += 1
|
||||
f$ += MID$(l$, i%, 1)
|
||||
UNTIL INSTR(Valid$, MID$(l$, i%+1, 1)) = 0
|
||||
FOR j% = 0 TO nFunc%-1
|
||||
IF f$ = func$(j%) EXIT FOR
|
||||
NEXT
|
||||
IF j% >= nFunc% nFunc% += 1
|
||||
func$(j%) = f$
|
||||
cnt%(j%) += 1
|
||||
ENDIF
|
||||
UNTIL i%=0
|
||||
ENDWHILE
|
||||
CLOSE #file%
|
||||
|
||||
C% = nFunc%
|
||||
CALL Sort%, cnt%(0), func$(0)
|
||||
|
||||
IF C% > 10 C% = 10
|
||||
FOR i% = 0 TO C%-1
|
||||
PRINT func$(i%) " (" ; cnt%(i%) ")"
|
||||
NEXT
|
||||
Loading…
Add table
Add a link
Reference in a new issue