合聲就是同時播出許多聲音,許多聲音融合在一起。
合聲的原理很簡單:訊號數值相加。
訊號數值有上下限(本題是-32768~32767),相加之後數值會溢位。因此相加之後,還要除以一個倍率,調整數值範圍。這裡使用最簡單的調整方式:兩個音階除以二,三個音階除以三,以此類推。
給你多個音名,請你製作一秒的合聲。每個音階的振幅都是32767。合聲之後的波形,最大振幅不超過32767。
M個音名 (1 <= M <= 5),以一個空白鍵隔開。
一個音名可能是三個字元或者兩個字元:第一個字元是ABCDEFG其中一個;第二個字元是#b其中一個,第二個字元可有可無;第三個字元是1234567其中一個。
一段合聲後的聲音:兩個整數 R N (R = N = 8000),是取樣頻率與訊號數量。下一行有 N 個整數,是訊號數值 (-32768 ~ +32767)。
C4 E4 G4 C5
8000 8000 0 9523 18058 24741 28941 30331 28924 25051 (後面省略)
1. 這是我自己寫的小工具,各位可以將本題的輸出數據存檔後拖曳至此,將本題的輸出數據轉換成聲音。
2. 當你使用的音響、耳機比較差,則無法播放太低、太高的頻率,無法聽到聲音。
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」
|