All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars
 perplexus dot info

 Gyro Lattice 3 - Values (Posted on 2008-06-22)
Please reflect upon "Gyro-Lattice 1 - Arrows" at puzzle 6061.

 The rotations available are: - [V] vertical [red] - [H] horizontal [magenta] - [R] right-down diagonal [green] - [L] left-down diagonal [salmon]The assigned operations programmed for this are:
```
V ±: +/- 1    H ±: ×/÷ 2     R ±: x2/√    L ±: ceil/floor  ```
("+" represents the high value, ie, V+ = +1; V- = -1).

Using this syntax how can you arrive at each output from the given input value?
Use values like H+, V-, L+ to fill in my table.
Oh, for each assigned task each operation (with a corresponding "±" value) is required.

In the first row we get:
``` 100 Op1[√] 10  Op2[+1] 11  Op3[*2] 22 Op4[floor] 22
100  R-    10   V+     11   H+     22  L-        22```

There will be more than one route to a destination.

 In Op1 Op2 Op3 Op4 Out In Op1 Op2 Op3 Op4 Out 100 R- V+ H+ L- 22 7 4 100 19 7 3 100 14 47 9.592.. 100 4999 47 15 100 6 47 1152

 See The Solution Submitted by brianjn No Rating

Comments: ( Back to comment list | You must be logged in to post comments.)
 computer solutions | Comment 3 of 5 |

Each section is headed by the input and output. Following each such header is a list of sets of operations, with the letters on one line and the + or - sign beneath each corresponding letter. Each entry in the list will serve to transform the numbers. I don't see what this has to do with the actual gyro lattice however.

` 100           22 vrlh+-++lrvh--++lrvh+-++rlvh--++rlvh-+++rvhl-++-rvhl-+++rvlh-+-+rvlh-+++`
` 100           19 vrhl--+-lrhv--+-lrhv+-+-rhlv-+--rhlv-++-rhvl-+--rhvl-+-+rlhv--+-rlhv-++-`
` 100           14 vhrl-+--vhrl++--hrlv+-+-hrvl+--+hvrl+---hvrl++--`
` 100           4999 lrhv-+--lrhv++--rhlv+---rhlv+-+-rhvl+---rhvl+--+rlhv+---rlhv++--rvhl+---`
` 100           6 vrhl+--+hrlv----hrvl----lrhv---+lrhv+--+rhlv---+rhlv--++rhvl--+-rhvl--++rlhv---+rlhv-+-+rvhl-+-+`
` 7             4 vhrl-+-+vhrl++--vhrl++-+vlhr+-+-vlhr+++-vrhl--+-vrlh---+vrlh+--+hlvr---+hrlv+--+hrvl+-+-hvlr---+hvrl+--+hvrl++-+lvhr-++-lvhr+++-rhlv-+--rhvl-+--rlvh-+-+rvhl--++rvlh--++vhlr++--vhlr+++-`
` 7             3 vhrl-+--hlrv-+-+hrlv--++hrlv+-+-hrvl--++hrvl+--+hvrl-+-+hvrl+---hvrl++--rhlv--++rhvl--++rlhv--+-rvhl--+-`
` 47            9.592 (approx)vlhr--+-vlhr-++-lvhr--+-lvhr+-+-vhlr-+--vhlr-++-`
` 47            15 rhlv-+++rhvl-+++rlhv-+++rvhl-++-`
` 47            1152 vlrh+-+-vlrh+++-vrhl++--vrhl++-+vrlh++--vrlh+++-lvrh-++-lvrh+++-`

DECLARE SUB permute (a\$)
DEFDBL A-Z
DATA 100,22, 100,19, 100,14, 100,4999, 100, 6
DATA 7,4, 7,3, 47,9.592, 47,15, 47,1152
CLS
OPEN "glat3val.txt" FOR OUTPUT AS #2
DO
READ nIn, nOut: PRINT nIn, nOut: PRINT #2, nIn, nOut
a\$ = "vhrl": h\$ = a\$
DO
FOR sg1 = 0 TO 1
sg(1) = sg1

FOR sg2 = 0 TO 1
sg(2) = sg2

FOR sg3 = 0 TO 1
sg(3) = sg3

FOR sg4 = 0 TO 1
sg(4) = sg4

v = nIn
FOR i = 1 TO 4
SELECT CASE MID\$(a\$, i, 1)
CASE "v"
IF sg(i) THEN v = v + 1:  ELSE v = v - 1
CASE "h"
IF sg(i) THEN v = v * 2:  ELSE v = v / 2
CASE "r"
IF sg(i) THEN v = v * v:  ELSE v = SQR(v)
CASE "l"
IF sg(i) THEN v = -INT(-v):  ELSE v = INT(v)
END SELECT
NEXT i
IF v = nOut OR nOut <> INT(nOut) AND INT(1000 * v + .5) = INT(1000 * nOut + .5) THEN
PRINT a\$
PRINT #2, a\$
FOR i = 1 TO 4
IF sg(i) THEN PRINT "+"; :  ELSE PRINT "-";
IF sg(i) THEN PRINT #2, "+"; :  ELSE PRINT #2, "-";
NEXT
PRINT
PRINT #2,
END IF

NEXT sg4

NEXT sg3

NEXT sg2

NEXT sg1
permute a\$
LOOP UNTIL a\$ = h\$
PRINT
PRINT #2,
LOOP
CLOSE

END

SUB permute (a\$)
DEFINT A-Z
x\$ = ""
FOR i = LEN(a\$) TO 1 STEP -1
l\$ = x\$
x\$ = MID\$(a\$, i, 1)
IF x\$ < l\$ THEN EXIT FOR
NEXT

IF i = 0 THEN
FOR j = 1 TO LEN(a\$) \ 2
x\$ = MID\$(a\$, j, 1)
MID\$(a\$, j, 1) = MID\$(a\$, LEN(a\$) - j + 1, 1)
MID\$(a\$, LEN(a\$) - j + 1, 1) = x\$
NEXT
ELSE
FOR j = LEN(a\$) TO i + 1 STEP -1
IF MID\$(a\$, j, 1) > x\$ THEN EXIT FOR
NEXT
MID\$(a\$, i, 1) = MID\$(a\$, j, 1)
MID\$(a\$, j, 1) = x\$
FOR j = 1 TO (LEN(a\$) - i) \ 2
x\$ = MID\$(a\$, i + j, 1)
MID\$(a\$, i + j, 1) = MID\$(a\$, LEN(a\$) - j + 1, 1)
MID\$(a\$, LEN(a\$) - j + 1, 1) = x\$
NEXT
END IF
END SUB

 Posted by Charlie on 2008-06-23 02:25:44

 Search: Search body:
Forums (0)