Escreva uma função que retorne a seqüência Farey de ordem n. A função deve ter um parâmetro que seja n. Deve retornar a seqüência como um array. Leia o seguinte para mais detalhes:
A sequência Farey F n de ordem n é a sequência de frações completamente reduzidas entre 0 e 1 que, quando em termos mais baixos, têm denominadores menores ou iguais a n, organizadas em ordem crescente de tamanho.
A seqüência Farey às vezes é incorretamente chamada de série Farey.
Cada seqüência de Farey:
:: * começa com o valor 0, denotado pela fração $ \ frac {0} {1} $
:: * termina com o valor 1, denotado pela fração $ \ frac {1} {1} $.
As sequências Farey das ordens 1 a 5 são:
$ {\ bf \ it {F}} _ 1 = \ frac {0} {1}, \ frac {1} {1} $
$ {\ bf \ it {F}} _ 2 = \ frac {0} {1}, \ frac {1} {2}, \ frac {1} {1} $
$ {\ bf \ it {F}} _ 3 = \ frac {0} {1}, \ frac {1} {3}, \ frac {1} {2}, \ frac {2} {3}, \ frac {1} {1} $
$ {\ bf \ it {F}} _ 4 = \ frac {0} {1}, \ frac {1} {4}, \ frac {1} {3}, \ frac {1} {2}, \ frac {2} {3}, \ frac {3} {4}, \ frac {1} {1} $
$ {\ bf \ it {F}} _ 5 = \ frac {0} {1}, \ frac {1} {5}, \ frac {1} {4}, \ frac {1} {3}, \ frac {2} {5}, \ frac {1} {2}, \ frac {3} {5}, \ frac {2} {3}, \ frac {3} {4}, \ frac {4} {5 }, \ frac {1} {1} $
farey
é uma função.
testString: 'assert(typeof farey === "function", "farey
is a function.");'
- text: farey(3)
deve retornar um array
testString: 'assert(Array.isArray(farey(3)), "farey(3)
should return an array");'
- text: 'farey(3)
deve retornar ["1/3","1/2","2/3"]
'
testString: 'assert.deepEqual(farey(3), ["1/3","1/2","2/3"], "farey(3)
should return ["1/3","1/2","2/3"]
");'
- text: 'farey(4)
deve retornar ["1/4","1/3","1/2","2/4","2/3","3/4"]
'
testString: 'assert.deepEqual(farey(4), ["1/4","1/3","1/2","2/4","2/3","3/4"], "farey(4)
should return ["1/4","1/3","1/2","2/4","2/3","3/4"]
");'
- text: 'farey(5)
deve devolver ["1/5","1/4","1/3","2/5","1/2","2/4","3/5","2/3","3/4","4/5"]
'
testString: 'assert.deepEqual(farey(5), ["1/5","1/4","1/3","2/5","1/2","2/4","3/5","2/3","3/4","4/5"], "farey(5)
should return ["1/5","1/4","1/3","2/5","1/2","2/4","3/5","2/3","3/4","4/5"]
");'
```