Суть вот, в i номера нот, которые могут браться из любого относительно музыкального ряда (гаммы/пентатоники). Подсчитываем число единиц в бинарном представлении 0, 1, 2, 3, 4, 5... и играем соответствующую ноту.
```
step = 1
num = 0
out = []
for i in range(16):
print(format(i, "04b"), bin(num).count("1"))
num += step
```
ещё есть Sid Meier's C.P.U. Bach, такая старая игрушка, генерирующая мелодии в стиле Баха. Кстати, спасибо за напоминание, попробую поставить.
@koshchey
Про музыку:
во-первых, я чуточку играю на блокфлейте (самоучка, занимаюсь давно и нерегулярно). Ещё учился играть на пианино чуть.
Сам слушаю в основном Alai Oli и Операцию Пластилин, и много отдельных треков.
во-вторых, про генерацию. Есть такой репозиторий на Github, https://github.com/true-grue/algomusic/blob/master/algomusic_part2.ipynb , по ссылке - примитивные штуки для генерации музыки (мелодии). Мне оттуда пока больше всего понравился алгоритм MusiNum.
Суть вот, в i номера нот, которые могут браться из любого относительно музыкального ряда (гаммы/пентатоники). Подсчитываем число единиц в бинарном представлении 0, 1, 2, 3, 4, 5... и играем соответствующую ноту.
```
step = 1
num = 0
out = []
for i in range(16):
print(format(i, "04b"), bin(num).count("1"))
num += step
```
ещё есть Sid Meier's C.P.U. Bach, такая старая игрушка, генерирующая мелодии в стиле Баха. Кстати, спасибо за напоминание, попробую поставить.
@koshchey
Про музыку:
во-первых, я чуточку играю на блокфлейте (самоучка, занимаюсь давно и нерегулярно). Ещё учился играть на пианино чуть.
Сам слушаю в основном Alai Oli и Операцию Пластилин, и много отдельных треков.
во-вторых, про генерацию. Есть такой репозиторий на Github, https://github.com/true-grue/algomusic/blob/master/algomusic_part2.ipynb , по ссылке - примитивные штуки для генерации музыки (мелодии). Мне оттуда пока больше всего понравился алгоритм MusiNum.