Word Finder.
#5
(11-17-2022, 04:58 PM)bplus Wrote: Hi Phil,

What you are talking about are Anagrams, words with same letters in different order eg art, rat, tar

Here is a function that converts a word to an AnaCode$ by counting up the number of A's, then B's, then C's...
This forms a unique string of digits, so you can use repeated amounts of letters in a word (up to 9) and still compare words.

In Demo of function I compare to anagram which as you can see needs 3 a's:
Code: (Select All)
_Title "AnaCode$ function" ' b+ 2022-11-17
test$(0) = "grmaana"
test$(1) = "angiogram"
test$(2) = "naagrma"
test$(3) = "telgram"
test$(4) = "gramana"
AC$ = AnaCode$("anagram")
For i = 0 To 4
    If AC$ = AnaCode$(test$(i)) Then
        Print test$(i); " is an anagram of 'anagram'"
    Else
        Print test$(i); " is NOT an anagram of 'anagram'"
    End If
Next

Function AnaCode$ (wrd$) ' anaCode$ converts word to an Anagram pattern
    ' number of A's in first, number of B's in 2nd, number of C's in third
    Dim L(26)
    w$ = UCase$(wrd$)
    For i = 1 To Len(wrd$)
        p = Asc(w$, i) - 64 ' A=1, B=2...
        L(p) = L(p) + 1
    Next
    For i = 1 To 26
        rtn$ = rtn$ + _Trim$(Str$(L(i)))
    Next
    AnaCode$ = rtn$
End Function

With AnaCode$ you don't need to worry about word lengths.
No, I don't just mean anagrams, I mean words that can be formed from *some* or *all* of the letters - RAT gives RAT, AT, ART, TA,TAR
Of all the places on Earth, and all the planets in the Universe, I'd rather live here (Perth, W.A.) Big Grin
Reply


Messages In This Thread
Word Finder. - by PhilOfPerth - 11-17-2022, 05:15 AM
RE: Word Finder. - by bplus - 11-17-2022, 04:58 PM
RE: Word Finder. - by PhilOfPerth - 11-17-2022, 11:39 PM
RE: Word Finder. - by Pete - 11-17-2022, 08:56 PM
RE: Word Finder. - by Unatic - 11-20-2022, 02:23 AM
RE: Word Finder. - by mnrvovrfc - 11-20-2022, 03:17 AM
RE: Word Finder. - by bplus - 11-17-2022, 09:22 PM
RE: Word Finder. - by bplus - 11-18-2022, 02:16 AM
RE: Word Finder. - by Pete - 11-20-2022, 06:22 AM



Users browsing this thread: 5 Guest(s)