Да, вы правильно прочитали название. играть звук пи.
Более конкретно, для каждой цифры числа пи в первой 1000-й сопоставьте ее с музыкальной нотой и выведите полученную мелодию в файл.
По существу, каждая цифра превращается в примечание по шкале мажора (в основном, по обычной шкале). 1 поворачивается к середине C, 2 - к D4, 3 - к E4, 9 - к D5 и так далее.
правила
- Каждая нота должна быть ровно 0,5 секунды.
- Мелодия должна содержать первые 1000 цифр числа Пи, включая начальные 3.
- От 1 до 7 обозначают среднее значение от C до B4, 8 обозначает C5, 9 обозначает D5 и 0 обозначает E5
- Разрешены все хорошо поддерживаемые форматы файлов, если они были созданы до этого испытания.
- Там может быть никаких пауз в любом месте файла, включая начало и конец.
- Играемый инструмент не имеет значения. Это может быть пианино, синусоида, что угодно, если только правильный звук легко услышать.
- Он не должен принимать никаких входных данных и не производить никаких выходных данных, кроме файла. Чтение из других файлов запрещено.
- Стандартные лазейки запрещены.
Пример кода Mathematica:
(*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];
Пример мелодии, показывающей первые 100 цифр: http://vocaroo.com/i/s0cfEILwYb8M
Для вашего здравого смысла: Таблица высот для каждой ноты и какая нота представляет каждую цифру:
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
-ой октаве. Кроме того, в вашей таблице цифра0
стоит последней (E5
)?