À partir de 1-TET, donnez des tempéraments égaux qui ont une meilleure et meilleure approximation du cinquième parfait (juste un rapport 3/2). ( Séquence OEIS A060528 )
La description officielle de la séquence, copiée de l'OEIS:
Une liste de tempéraments égaux (divisions égales de l'octave) dont les pas d'échelle les plus proches sont de plus en plus proches des rapports de deux tons d'harmonie musicale: le 4e parfait, 4/3 et son complément le 5e parfait, 3/2.
Notez que par symétrie, le quatrième parfait n'a pas d'importance.
Disons que nous savons que 3 est dans la séquence. Les fréquences en 3-TET sont:
2^0, 2^⅓, 2^⅔
Où 2^⅔
est l' approximation logarithmique la plus proche de 3/2
.
Est-ce que 4 dans la séquence? Les fréquences en 4-TET sont:
2^0, 2^¼, 2^½, 2^¾
Où 2^½
est l'approximation la plus proche de 3/2
. Ce n'est pas mieux que 2^⅔
, donc 4 n'est pas dans la séquence.
Par une méthode similaire, nous confirmons que 5 est dans la séquence, etc.
Lorsqu'on lui donne un entier n
en entrée, la sortie doit être les premiers N nombres de la séquence dans l'ordre. Par exemple, lorsque n = 7
la sortie doit être:
1 2 3 5 7 12 29
Description de la séquence par xnor
La constante irrationnelle peut être approximé par une séquence de fractions rationnelles
Une fraction est incluse dans la séquence s'il s'agit de la nouvelle plus proche par distance absolue , c'est-à-dire plus proche que toute autre fraction ayant un dénominateur plus petit ou égal.
Votre objectif est de sortir le premier dénominateurs dans l'ordre. Il s'agit de la séquence A060528 ( tableau ). Les numérateurs (non requis) sont donnés par A254351 ( tableau )
Règles:
- N'importez pas directement la séquence A060528.
Le format n'a pas d'importance tant que les chiffres peuvent être distingués. Dans l'exemple ci-dessus, la sortie peut également être:
[1,2,3,5,7,12,29]
Comme il s'agit d'un code-golf, le code le plus court en octets l'emporte.
la source
Réponses:
05AB1E ,
1918 octetsEssayez-le en ligne!
la source
Wolfram Language (Mathematica) ,
6260 octetsEssayez-le en ligne!
la source
JavaScript (V8) ,
818078 octets-2 octets merci Arnauld!
Essayez-le en ligne!
la source
Python 2 , 92 octets
Essayez-le en ligne!
Utilise la constante2Journal2( 3 ) . Je ne savais pas combien de chiffres de précision sont nécessaires, car l'inexactitude rompra éventuellement la séquence, j'ai donc utilisé la précision flottante complète de
3.169925001442312
pour2 * numpy.log2(3)
.la source
..., 665, (1995), (4655), 8286, ...
Essayez-le en ligne!2 * numpy.log2(3)
que le nombre complet? (Ou encore mieux,numpy.log2(9)
)from numpy import*
etlog2(9)
.package::function
sans charger d'package
abord!Propre ,
128111108 octetsEssayez-le en ligne!
Devrait fonctionner jusqu'aux limites du
Real
type double précision 64 bits de.la source
MATL ,
2725 octetsEssayez-le en ligne!
Explication
la source
Perl 5 (
-MPOSIX=log2 -M5.01 -n
),73,78, 71 octetsCorrection du commentaire suivant, peut être amélioré ...
-7 octets grâce à Grimy
Essayez-le en ligne!
la source