Oui, vous avez bien lu le titre. jouer le son de pi.
Plus spécifiquement, pour chaque chiffre de pi dans les 1000 premiers, mappez-le sur une note de musique et sortez la mélodie résultante dans un fichier.
Fondamentalement, chaque chiffre se transforme en une note sur l'échelle de do majeur (essentiellement l'échelle normale). donc 1 tour au milieu C, 2 tours au D4, 3 tours au E4, 9 tours au D5 et ainsi de suite.
Règles
- Chaque note doit durer exactement 0,5 seconde.
- La mélodie doit contenir les 1000 premiers chiffres de pi, y compris les 3 premiers.
- 1 à 7 représente le milieu C à B4, 8 est C5, 9 est D5 et 0 est E5
- Tous les formats de fichiers bien pris en charge sont autorisés, tant qu'ils ont été créés avant ce défi.
- Il ne peut y avoir de pause nulle part dans le fichier, y compris le début et la fin.
- L'instrument joué n'a pas d'importance. Ce pourrait être un piano, une onde sinusoïdale, n'importe quoi vraiment, tant que le son correct est facilement audible.
- Il ne doit prendre aucune entrée et ne produire aucune sortie à l'exception du fichier. La lecture à partir d'autres fichiers n'est pas autorisée.
- Les failles standard sont interdites.
Exemple de code mathématique:
(*please forgive me for this horrible, horrible mess of code*)
digits = RealDigits[Pi, 10, 1000][[1]] /. {0 -> 10};
weights = {0, 2, 4, 5, 7, 9, 11, 12, 14, 16};
melody = {};
For[i = 1, i < 1001, i++, melody = {melody , Sound[SoundNote[weights[[digits[[i]]]], 0.5]]}]
final = Sound[Flatten[melody]];
Export["C:\\Mathematica Shenanigans\\pi.wav", final];
Exemple de mélodie montrant les 100 premiers chiffres: http://vocaroo.com/i/s0cfEILwYb8M
Pour votre santé mentale, un tableau des hauteurs pour chaque note et quelle note chaque chiffre représente:
Digit 1: C: 261.63 Hz
Digit 2: D: 293.66 Hz
Digit 3: E: 329.63 Hz
Digit 4: F: 349.23 Hz
Digit 5: G: 392.00 Hz
Digit 6: A: 440.00 Hz
Digit 7: B: 493.88 Hz
Digit 8: C5: 523.25 Hz
Digit 9: D5: 587.33 Hz
Digit 0: E5: 659.25 Hz
4
-ième octave. De plus, dans votre tableau, le chiffre0
vient-il en dernier (E5
)?