入力
トライアド和音の記号(http://en.wikipedia.org/wiki/Chord_(music)#Triadsを参照)。
出力
与えられたコードを構成する音。
例
入力:AM
出力:A C# E
入力:C#m
出力:C# E G#
入力:Db+
出力:C# F A
入力:C0
出力:C D# F#
ボーナス
7番目の和音にも対処できる場合は-50
-150は実際に和音を鳴らします
-150ピアノで和音を演奏する方法を示すために印刷可能なキャラクターを使用する場合。例AM
:
┌─┬─┬┬─┬─┬─┬─┬┬─┲┱─┬─┬─┲━┱┬─┲━┱─┬─┬┬─┬┬─┬─┐
│ │ ││ │ │ │ ││ ┃┃ │ │ ┃ ┃│ ┃ ┃ │ ││ ││ │ │
│ │ ││ │ │ │ ││ ┃┃ │ │ ┃ ┃│ ┃ ┃ │ ││ ││ │ │
│ │ ││ │ │ │ ││ ┃┃ │ │ ┃ ┃│ ┃ ┃ │ ││ ││ │ │
│ └┬┘└┬┘ │ └┬┘└┲┛┗┱┘ │ ┗┯┛└┲┛ ┃ └┬┘└┬┘└┬┘ │
│ │ │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │ │
└──┴──┴──┴──┴──┺━━┹──┴──┴──┺━━┹──┴──┴──┴──┘
印刷可能な文字を使用してギターでコードを演奏する方法を示す場合は-100。例AM
:
x o o o o o
┌───┬───┬───┬───┬───┐
│ │ │ │ │ │
├───┼───┼───┼───┼───┤
│ │ │ │ │ │
├───┼───┼───┼───┼───┤
│ │ █ █ █ │
├───┼───┼───┼───┼───┤
│ │ │ │ │ │
(https://en.wikipedia.org/wiki/Box-drawing_characterを参照)
ルール
結果は、コマンドラインプログラムまたはスクリプトでなければなりません。
入力と出力は、楽譜表記の標準に従っている限り、どのような形式でもかまいません。
ギターまたはピアノの表現は、3つ(トライアド)または4つ(7つ)の必要なノートが含まれていて、それ以外の場合にのみ有効と見なされます。同じ音が和音に数回現れることがあります。
サウンド生成を除き、外部ライブラリは許可されません(この場合
#include
、import
...ディレクティブは文字カウントに追加されません)。これはコードゴルフで、最短のコードが勝ちます!
音楽理論の少し...
現代の西洋の調子の音楽では、各オクターブは12の連続した音符で構成されています。
A
A#
B
C
C#
D
D#
E
F
F#
G
G#
または:
La
La#
Si
Do
Do#
Re
Re#
Mi
Fa
Fa#
Sol
Sol#
このシステムでは、2つの連続する音符(A
and A#
、or E
、andなどF
)が1つの半音で区切られていると見なします。また、メモは一種の「ループ」G#
ですA
。すぐに続くのはです。
和音は、「一緒に聞こえる」いくつかの音(2、3、4、時にはそれ以上)で構成されます。たとえば、トライアドのコードには3つの異なる音が含まれ、7番目のコードには4つの異なる音が含まれます。
4つのトライアドコードを次のように定義しましょう。
Major triad:コードのルート(この質問では、入力として与えられた音符)、ルートのメジャー3分の1(ルートより4半音高い)、およびルートの完全な5番目(ルートより7半音高い) ); これは0-4-7として記号化できます
0-3-7で表されるマイナートライアド
拡張されたトライアド、0-4-8のシンボル
0-3-6を象徴する減少したトライアド
あなたが作りたいのであれば、たとえば、Cメジャートライアドを指摘し、C
、CM
、Cmaj
、あなたは注意3が必要になります。
- 0:ルート、この場合はa
C
- 4:マイナーサード、ルートより4半音高い。それは
E
- 7:完全な5番目、ルートより7半音高い:a
G
これは何である0-4-7
、0-3-7
、0-4-8
および0-3-6
平均の上に使用される表記!7番目のコードでは、次のパターンを使用します。
今日は以上です!さて、素晴らしいコードで私を驚かせてください...質問があれば、以下にコメントを追加してください。
Db+
ますDb F A
が、D#やGはありません。それはおそらく必要以上の理論であり、式は重要な部分でした。ウィキペディアにリストされている7番目の和音の8つすべてを本当に含めたい場合は、入力を指定する必要があります。ピアノとギターのascii-art出力は柔軟であると思います。