Question: C++ Program: There are 3 links in this program(in purple) that I included in the bottom since this is a picture. http://buttonbass.com/editor.html conventional way to

C++ Program:

There are 3 links in this program(in purple) that I included in the bottom since this is a picture.

C++ Program: There are 3 links in this program(in purple) that I

http://buttonbass.com/editor.html

conventional way to name the piano keys: http://www.piano-keyboard-guide.com/piano-keyboard-diagram.html

video explanation: https://www.youtube.com/watch?feature=fvwp&NR=1&v=vfD-00I6Tv4

The site http://buttonbass.com/editor.html (requires Flash) features an online player piano. If you click on the Notes button just above the piano keyboard, and then Computer Keyboard, you will see that each key is labelled with a character. The text box just above it contains a sequence of these characters, indicating a song to be played on the piano. If you click Play, the sequence of notes will be played. If you clear the text box and type in or copy and paste a different sequence of characters, then the song that it represents will be played. The Interval control lets you specify the tempo, the number of milliseconds between the starts of each beat of the song The ButtonBass software expects the song to be represented as a sequence of instructions, where each instruction is either: one of the characters on the piano keyboard display: zxcVBNM,./ASDFGHJKLQWERTYUIOP 12 3 4 5 6 7 8 9 01@#$%^&* ()zxcvbnmasdfghjklqwertyuiop Lower case letters represent the same piano key as their upper case equivalent . . a space character, representing a rest that lasts one beat * an open square bracket r, followed by a sequence of characters on the piano keyboard display, followed by a close square bracket ]. Thi:s represents a chord where all the indicated piano keys are played simultaneously for one beat (The ButtonBass software actually accepts a few more possibilities, but they are not relevant to this project.) Now for the bad news: The people who want to produce songs want to use a notation that they find more natural, knowing the conventional way to name the piano keys. [Here's a video explanation of the conventional naming.] For them, a song is expressed as a string like A3C#8 //E/ /F#3A3D4 /A3C#87, where a slash terminates every beat. This means "For the first beat, play a chord consisting of A in the third octave, and Cff and E in the (default) fourth octave. For the second beat, play nothing. For the third beat, play E in the (default) fourth octave. Play nothing for the fourth beat. For the fifth beat, play a chord consisting of F# and A in the third octave, and D in the fourth octave. For the sixth beat, play a chord consisting of A in the third octave and C# and E in the (default) fourth octave." Note: The Acoustical Society of America denotes the octave that ranges from middle C to the B above middle C as the fourth octave. The B just below middle C is the end of the third octave; the C one octave above middle C begins the fifth octave. The ButtonBass piano keyboard ranges from C2 (the C that starts the second octave) to C6 (the C that starts the sixth octave) Your assignment is essentially to encode a song from the more natural representation to the sequence of characters the ButtonBass software wants For example, the song A3C#E //E//F#3A3D4/A3C#E/should be encoded as the string[D1J] J [BDH][DIJ] The site http://buttonbass.com/editor.html (requires Flash) features an online player piano. If you click on the Notes button just above the piano keyboard, and then Computer Keyboard, you will see that each key is labelled with a character. The text box just above it contains a sequence of these characters, indicating a song to be played on the piano. If you click Play, the sequence of notes will be played. If you clear the text box and type in or copy and paste a different sequence of characters, then the song that it represents will be played. The Interval control lets you specify the tempo, the number of milliseconds between the starts of each beat of the song The ButtonBass software expects the song to be represented as a sequence of instructions, where each instruction is either: one of the characters on the piano keyboard display: zxcVBNM,./ASDFGHJKLQWERTYUIOP 12 3 4 5 6 7 8 9 01@#$%^&* ()zxcvbnmasdfghjklqwertyuiop Lower case letters represent the same piano key as their upper case equivalent . . a space character, representing a rest that lasts one beat * an open square bracket r, followed by a sequence of characters on the piano keyboard display, followed by a close square bracket ]. Thi:s represents a chord where all the indicated piano keys are played simultaneously for one beat (The ButtonBass software actually accepts a few more possibilities, but they are not relevant to this project.) Now for the bad news: The people who want to produce songs want to use a notation that they find more natural, knowing the conventional way to name the piano keys. [Here's a video explanation of the conventional naming.] For them, a song is expressed as a string like A3C#8 //E/ /F#3A3D4 /A3C#87, where a slash terminates every beat. This means "For the first beat, play a chord consisting of A in the third octave, and Cff and E in the (default) fourth octave. For the second beat, play nothing. For the third beat, play E in the (default) fourth octave. Play nothing for the fourth beat. For the fifth beat, play a chord consisting of F# and A in the third octave, and D in the fourth octave. For the sixth beat, play a chord consisting of A in the third octave and C# and E in the (default) fourth octave." Note: The Acoustical Society of America denotes the octave that ranges from middle C to the B above middle C as the fourth octave. The B just below middle C is the end of the third octave; the C one octave above middle C begins the fifth octave. The ButtonBass piano keyboard ranges from C2 (the C that starts the second octave) to C6 (the C that starts the sixth octave) Your assignment is essentially to encode a song from the more natural representation to the sequence of characters the ButtonBass software wants For example, the song A3C#E //E//F#3A3D4/A3C#E/should be encoded as the string[D1J] J [BDH][DIJ]

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!