Rob,
Thanks for the reply!
Maybe I'm going too far too fast. Only two months with Revolution. Your code
looks rather complex. My fault, not yours.
All the best,
Andy Burns
----- Original Message -----
From: "Rob Cozens" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, September 20, 2003 9:03 PM
Subject: Re: Fun project but fuzzy on logic. "PhoneCALLs"
> >I remember a program that you could type in your phone number and it
would
> >give you all permutations of what possible words could be formed.
> >
> >I just wanted to see how easy it was. Well... I'm really stumped on the
> >logic.
>
> Hi Andy,
>
> I begin with these presumptions:
>
> 1. We are dealing with 7-digit numbers: no area code.
>
> 2. One has a list of all "legal" words up to seven characters in
> length in an array variable, myDictionary. So that myDictionary[1]
> contains all single-character words, myDictionary[2] contains all
> two-character words, etc.
>
> 3. One has a valid phone number in theNumber
>
> 4. All words are the same length: one can't put blanks in places
> where there are characters.
>
> local validWords
>
> function goodWord thisWord
> return (offset(thisWord,validWords)<>0)
> end goodWord
>
> function phoneWords theNumber
> put empty into characterList
> put 0 into characterCount
> repeat for each char theDigit in theNumber
> switch theDigit
> case "2"
> put "ABC" into theCharacters
> break
> case "3"
> put "DEF" into theCharacters
> break
> case "4"
> put "GHI" into theCharacters
> break
> case "5"
> put "JKL" into theCharacters
> break
> case "6"
> put "MNO" into theCharacters
> break
> case "7"
> put "PQRS" into theCharacters
> break
> case "8"
> put "TUV" into theCharacters
> break
> case "9"
> put "WXYZ" into theCharacters
> break
> default
> next repeat
> end switch
> add 1 to characterCount
> put theCharacters into characterList[characterCount]
> end repeat
> put myDictionary[characterCount] into validWords
> put empty into wordList
> put empty into thisWord
> repeat for each char myCharacter1 in characterList[1]
> put myCharacter1 into char 1 of thisWord
> if characterCount is 1 then
> if goodWord(thisWord) then put thisWord&return after wordList
> next repeat
> end if
> repeat for each char myCharacter2 in characterList[2]
> put myCharacter2 into char 2 of thisWord
> if characterCount is 2 then
> if goodWord(thisWord) then put thisWord&return after wordList
> next repeat
> end if
> repeat for each char myCharacter3 in characterList[3]
> put myCharacter3 into char 3 of thisWord
> if characterCount is 3 then
> if goodWord(thisWord) then put thisWord&return after wordList
> next repeat
> end if
> repeat for each char myCharacter4 in characterList[4]
> put myCharacter4 into char 4 of thisWord
> if characterCount is 4 then
> if goodWord(thisWord) then put thisWord&return after wordList
> next repeat
> end if
> repeat for each char myCharacter5 in characterList[5]
> put myCharacter5 into char 5 of thisWord
> if characterCount is 5 then
> if goodWord(thisWord) then put thisWord&return after
wordList
> next repeat
> end if
> repeat for each char myCharacter6 in characterList[6]
> put myCharacter6 into char 6 of thisWord
> if characterCount is 6 then
> if goodWord(thisWord) then put thisWord&return after
wordList
> next repeat
> end if
> repeat for each char myCharacter7 in characterList[7]
> put myCharacter7 into char 7 of thisWord
> if goodWord(thisWord) then put thisWord&return after
wordList
> end repeat
> end repeat
> end repeat
> end repeat
> end repeat
> end repeat
> end repeat
> return wordList
> end phoneWords
>
> The nested repeats could be a candidate for recursion, but that's not
> my strong suit. This should be easier to understand anyway. :{`)
> --
>
> Rob Cozens
> CCW, Serendipity Software Company
> http://www.oenolog.net/who.htm
>
> "And I, which was two fooles, do so grow three;
> Who are a little wise, the best fooles bee."
>
> from "The Triple Foole" by John Donne (1572-1631)
> _______________________________________________
> use-revolution mailing list
> [EMAIL PROTECTED]
> http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
[EMAIL PROTECTED]
http://lists.runrev.com/mailman/listinfo/use-revolution