Files
freeCodeCamp/curriculum/challenges/chinese/10-coding-interview-prep/rosetta-code/farey-sequence.md

57 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: 59c3ec9f15068017c96eb8a3
title: Farey序列
challengeType: 5
videoUrl: ''
---
# --description--
<p>编写一个返回n阶Farey序列的函数。该函数应该有一个参数n。它应该将序列作为数组返回。阅读以下内容了解更多详情 </p><p>阶数n的<a href='https://en.wikipedia.org/wiki/Farey sequence' title='wpFarey序列'>Farey序列</a> F <sub>n</sub>是在0和1之间的完全减少的分数的序列当在最低阶段时具有小于或等于n的分母按照增大的大小排列。 </p><p> Farey序列有时被错误地称为Farey系列。 </p><p>每个Farey序列 </p><p> :: *以值0开头由分数$ \ frac {0} {1} $表示</p><p> :: *以值1结尾由$ \ frac {1} {1} $分数表示。 </p><p>订单1到5的Farey序列是 </p><p> $ {\ bf \ it {F}} _ 1 = \ frac {0} {1}\ frac {1} {1} $ </p><p></p><p> $ {\ bf \ it {F}} _ 2 = \ frac {0} {1}\ frac {1} {2}\ frac {1} {1} $ </p><p></p><p> $ {\ bf \ it {F}} _ 3 = \ frac {0} {1}\ frac {1} {3}\ frac {1} {2}\ frac {2} {3}\ frac {1} {1} $ </p><p></p><p> $ {\ 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} $ </p><p></p><p> $ {\ 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} $ </p>
# --hints--
`farey`是一种功能。
```js
assert(typeof farey === 'function');
```
`farey(3)`应该返回一个数组
```js
assert(Array.isArray(farey(3)));
```
`farey(3)`应该返回`["1/3","1/2","2/3"]`
```js
assert.deepEqual(farey(3), ['1/3', '1/2', '2/3']);
```
`farey(4)`应该返回`["1/4","1/3","1/2","2/4","2/3","3/4"]`
```js
assert.deepEqual(farey(4), ['1/4', '1/3', '1/2', '2/4', '2/3', '3/4']);
```
`farey(5)`应返回`["1/5","1/4","1/3","2/5","1/2","2/4","3/5","2/3","3/4","4/5"]`
```js
assert.deepEqual(farey(5), [
'1/5',
'1/4',
'1/3',
'2/5',
'1/2',
'2/4',
'3/5',
'2/3',
'3/4',
'4/5'
]);
```
# --solutions--