Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] Re: looping - path problem

From: tomc:cs:uoregon at: 24-Apr-2006 22:16

hi Rosemary, have you used the :word notation for the variable in your path (think of it as getting the value out of the word instead of putting it in) repeat i 4[ either equal? ans/:i target/:i [bulls: bulls + 1] [shots: shots + 1] ] Rosemary de Dear wrote:
> Hello Rebol-Org, > > I am having a problem trying to "shrink" some code. These are the initial > > values - > > random/seed now > digits: [1 2 3 4 5 6 7 8 9 0] > target: copy [] > > ;;; then target becomes a fairly random 4-digit number > target: to-string random/secure digits > remove/part target 6 > > I want to compare the target with the user's answer, but I can't make a > for or repeat loop > work > because I get invalid path errors. Even though it returns approptiate > results, what follows > is > obviously inefficient so I would be very glad to know the way to make it > > leaner. > > Regards, Rosemary > > get-answer: does [ > ans: to-string num/text > answer: copy [] > bulls: shots: 0 > > if find target ans/1 [ > either ans/1 == target/1 > [bulls: bulls + 1] [shots: shots + 1]] > > if find target ans/2 [ > either ans/2 == target/2 > [bulls: bulls + 1][shots: shots + 1]] > > if find target ans/3 [ > either ans/3 == target/3 > [bulls: bulls + 1][shots: shots + 1]] > > if find target ans/4 [ > either ans/4 == target/4 > [bulls: bulls + 1][shots: shots + 1]] > > tries: tries + 1 > either ( tries <= 9 ) > [answer: rejoin ["0" tries ": " ans " " bulls " " shots]] > [answer: rejoin [tries ": " ans " " bulls " " shots]] > ] > > -- > > Formix Australia - www.formix.com.au > > 613 9354 9585 > PO Box 261 Nth Carlton Vic 3054
-- ... nice weather eh tomc-cs.uoregon.edu