45 lines
960 B
Plaintext
45 lines
960 B
Plaintext
print "Loading dictionary."
|
|
open "unixdict.txt" for input as #1
|
|
while not(eof(#1))
|
|
line input #1, a$
|
|
dict$=dict$+" "+a$
|
|
wend
|
|
close #1
|
|
|
|
print "Dictionary loaded."
|
|
print "Seaching for semordnilaps."
|
|
|
|
semo$=" " 'string to hold words with semordnilaps
|
|
|
|
do
|
|
i=i+1
|
|
w$=word$(dict$,i)
|
|
p$=reverseString$(w$)
|
|
if w$<>p$ then
|
|
p$=" "+p$+" "
|
|
if instr(semo$,p$) = 0 then
|
|
if instr(dict$,p$) then
|
|
pairs=pairs+1
|
|
print w$+" /"+p$
|
|
semo$=semo$+w$+p$
|
|
end if
|
|
end if
|
|
end if
|
|
scan
|
|
loop until w$=""
|
|
|
|
print "Total number of unique semordnilap pairs is ";pairs
|
|
wait
|
|
|
|
Function isPalindrome(string$)
|
|
string$ = Lower$(string$)
|
|
reverseString$ = reverseString$(string$)
|
|
If string$ = reverseString$ Then isPalindrome = 1
|
|
End Function
|
|
|
|
Function reverseString$(string$)
|
|
For i = Len(string$) To 1 Step -1
|
|
reverseString$ = reverseString$ + Mid$(string$, i, 1)
|
|
Next i
|
|
End Function
|