Isso parece quase trivial, mas, depois de algum esforço, não consegui vencer a solução literal em J, pensei que poderia ser um desafio decente (embora, para ser claro, esse não seja um desafio específico de J).
O título diz tudo. Você simplesmente precisa escrever um programa ou função (sem argumentos) que retorne ou imprima:
N NE E SE S SW W NW
Você pode usar novas linhas no lugar de espaços.
Uma função sem argumento retornando uma matriz de seqüências de caracteres, como
['N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW']
também é aceitável.
As letras podem estar em maiúsculas ou minúsculas, mas não podem ser misturadas.
0, 0.5, 1, 1.5, 2, 2.5, 3, 3.5
. Infelizmente, o código J necessário para mapear esses resultados em letras acabou sendo mais caro que um literal.
1, 1+i, i, -1+i, -1, -1-i, -i, 1-i
então você tem uma parte real ou imaginária por direção cardinal em vez de duas. Provavelmente é mais difícil gerá-los, a menos que haja alguma maneira de você arredondar esses poderes de i para longe de 0? Não sei o quão fácil ou difícil isso seria em J, mas é uma ideia.