피보나치 수열 : Python의 뮤지컬 이야기
Mar 20 2023
피보나치 수열은 수세기 동안 수학자, 과학자 및 예술가의 상상력을 사로잡은 매혹적인 수학적 수열입니다. 0과 1로 시작하고 각 후속 숫자는 이전 두 숫자의 합인 이 일련의 숫자는 자연, 예술 및 음악에서 발생하는 것으로 밝혀졌습니다.
피보나치 수열은 수세기 동안 수학자, 과학자 및 예술가의 상상력을 사로잡은 매혹적인 수학적 수열입니다. 0과 1로 시작하고 각 후속 숫자는 이전 두 숫자의 합인 이 일련의 숫자는 자연, 예술 및 음악에서 발생하는 것으로 밝혀졌습니다. 실제로 많은 음악가와 작곡가가 피보나치 수열을 사용하여 아름답고 복잡한 음악 작품을 만들어 왔습니다.
음악에서 피보나치 수열의 가장 흥미로운 적용 중 하나는 "피보나치 리듬"으로 알려진 것의 생성입니다. 이 리듬은 피보나치 수열을 기반으로 하며 시퀀스의 각 숫자는 리듬의 비트를 나타냅니다. 예를 들어 피보나치 리듬의 처음 몇 비트는 다음과 같습니다.
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144...
Python에서 피보나치 리듬을 생성하기 위해 피보나치 시퀀스를 기반으로 비트 목록을 생성하는 함수를 정의할 수 있습니다.
def fibonacci_rhythm(num_beats):
# Initialize the first two numbers in the sequence
fib_seq = [1, 1]
# Generate the Fibonacci sequence up to the desired number of beats
while len(fib_seq) < num_beats:
next_num = fib_seq[-1] + fib_seq[-2]
fib_seq.append(next_num)
# Return the list of beats
return fib_seq[:num_beats]
import winsound
# Generate a 13-beat Fibonacci rhythm
fib_rhythm = fibonacci_rhythm(13)
# Play the rhythm using simple sine wave tones
for beat in fib_rhythm:
frequency = 440 * (2 ** (beat / 12))
frequency = int(max(32,min(frequency,32767)))
duration = 200
winsound.Beep(frequency,duration)
한 가지 예는 피보나치 수열을 사용하여 많은 형태의 음악에서 일반적으로 사용되는 5음계인 5음계를 만드는 것입니다. 피보나치 펜타토닉 스케일을 만들려면 다음 공식을 사용할 수 있습니다.
scale = [0, 1, 3, 5, 8]
for i in range(5,21):
next_note = scale[-1] + scale[-2]
scale.append(next_note % 12)
from midiutil import MIDIFile
# Generate a Fibonacci pentatonic scale
scale = [0, 1, 3, 5, 8]
for i in range(5, 21):
next_note = scale[-1] + scale[-2]
scale.append(next_note % 12)
# Create a MIDI file with a Fibonacci melody
midi_file = MIDIFile(1)
# Add notes to the MIDI file based on the Fibonacci sequence
time = 0
for beat in fibonacci_rhythm(13):
note = scale[beat % 5] + (beat // 5) * 12
midi_file.addTempo(0,0,120)
midi_file.addNote(0, 0,note,time,1,127)
time += 0.5
# Write the MIDI file to disk
with open("fibonacci.mid", "wb") as output_file:
midi_file.writeFile(output_file)
aSongScout의 음악에서 피보나치 시퀀스의 부드러운 아름다움을 들어보세요.https://youtu.be/IGJeGOw8TzQ. 각 음표가 숫자의 정확함과 우아함으로 펼쳐지면서 수학과 음악의 매혹적인 상호 작용에 빠져보세요.

![연결된 목록이란 무엇입니까? [1 부]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































