Box the compass: Difference between revisions

m
J: format numbers more regularly
(+Java, fix VB.NET highlighting)
m (J: format numbers more regularly)
Line 34:
As for the required example, sometimes it's simpler to do just a small bit of "extra" work:
 
<lang j> ((1 ":@:+ ~."1@index),.' ',.;@~."1@deg2pnt,.' ',."'7.2'8!:2]) _5.62 0 5.62 +/~11.25 * i.33
1 North _5 -5.62 0.00 5.62
2 North by east 5.63 11.25 16.87
3 North-northeast 16.88 22.550 28.12
4 Northeast by north 28.13 33.75 39.37
5 Northeast 39.38 45.00 50.62
6 Northeast by east 50.63 56.25 61.87
7 Northeast-east 61.88 67.550 73.12
8 East by north 73.13 78.75 84.37
9 East 84.38 90.00 95.62
10 East by south 95.63 101.25 106.87
11 East-southeast 106.88 112.550 118.12
12 Southeast by east 118.13 123.75 129.37
13 Southeast 129.38 135.00 140.62
14 Southeast by south 140.63 146.25 151.87
15 Southeast-south 151.88 157.550 163.12
16 South by east 163.13 168.75 174.37
17 South 174.38 180.00 185.62
18 South by west 185.63 191.25 196.87
19 South-southwest 196.88 202.550 208.12
20 Southwest by south 208.13 213.75 219.37
21 Southwest 219.38 225.00 230.62
22 Southwest by west 230.63 236.25 241.87
23 Southwest-west 241.88 247.550 253.12
24 West by south 253.13 258.75 264.37
25 West 264.38 270.00 275.62
26 West by north 275.63 281.25 286.87
27 West-northwest 286.88 292.550 298.12
28 Northwest by west 298.13 303.75 309.37
29 Northwest 309.38 315.00 320.62
30 Northwest by north 320.63 326.25 331.87
31 Northwest-north 331.88 337.550 343.12
32 North by west 343.13 348.75 354.37
1 North 354.38 360.00 365.62</lang>
 
Here, I compute the name (and index) for each of the numbers, and then find the unique list of names (and indices) represented in each row -- which is always only one name (and only one index) -- and convert the whole thing to characters.
 
=={{header|Java}}==
{{trans|Visual Basic .NET}}
6,962

edits