Convex hexagon ABCDEF is equiangular but has no two sides the same length. Its sides in some order are 1, 2, 3, 4, 5 and 6 units long. If AB=1 and CD>BC, what are the lengths of BC, CD, DE, EF and FA?
Another convex hexagon is also equiangular and has sided measuring 1, X, 3, 4, 5, and 6 units long in that order going clockwise. What is the measure of X?
Part 2 is most easily done on a sheet of triangularly tesellated paper (tesellated with equilateral triangles). Starting with a line 1unit long, going say lowerleft to upperright, followed by a 6unit horizontal to the right connecting to it, then a 5unit segment going down and right, and a 4unit going down and left and a 3unit going left, the gap of 8 units is easy to see.
What's also easy to see is that, as in a regular hexagon, opposite sides are parallel. What this in turn means is that the total length of each pair of adjacent sides must match the total length of the pair on the opposite side, as the slopes of all four of these segments are the same in absolute value relative to the two parallel sides between which they lie. This will in fact guarantee that the resulting sides will indeed fit into the type of hexagon we seek.
So we just need to arrange the numbers so that cyclically each adjacent pair adds to the same total as the two that lie opposite them (side A+side B = side D+side E, etc.)
There are 4 orderings of the digits 16 that meet these criteria. Arbitrarily starting the cycle at the 1, these are:
145236
153426
162435
163254
The bottom two are just the backwards versions of the top two.
If we take the first column as AB, the second as BC, ..., the last as FA, the only one with CD>BC is 145236, so the sides are
A B C D E F A
1 4 5 2 3 6
The program held "1" in the first position and found all permutations of the digits 2  6, and tested all opposite pairs for the equality of their totals:
DECLARE SUB permute (a$)
CLS
a$ = "23456": h$ = a$
DO
s$ = "1" + a$ + "1" + a$
good = 1
FOR i = 1 TO 6
a = VAL(MID$(s$, i, 1))
b = VAL(MID$(s$, i + 1, 1))
c = VAL(MID$(s$, i + 3, 1))
d = VAL(MID$(s$, i + 4, 1))
IF a + b <> c + d THEN good = 0: EXIT FOR
NEXT i
IF good THEN PRINT "1" + a$
permute a$
LOOP UNTIL a$ = h$

Posted by Charlie
on 20041015 14:51:19 