Here's an updated version. I now explicitly give out the scales as well 
as chords, and have attempted to optimise the "spelling" of 8-note 
scales (which don't sit naturally on the 7 letters A-G). I made some 
simplifications too.

Sample interaction:

C7
Scale: C D E F G A Bb
Chord: C E G Bb
C7alt
Scale: C Db Eb Fb Gb Ab Bb
Chord: C Eb Gb Bb
C7b9
Scale: C Db Eb E F# G A Bb
Chord: C E G Bb Db Eb F# A
Cdim7
Scale: C D Eb F Gb Ab A B
Chord: C Eb Gb A
C#dim7
Scale: C# D# E F# G A A# B#
Chord: C# E G A#

Attachments:
http://www.ruby-forum.com/attachment/4550/chords-bc.rb

-- 
Posted via http://www.ruby-forum.com/.