Skip to main content
3 of 5
added 1 character in body
l4m2
  • 28.5k
  • 12
  • 14

Sum of Two Intervals

A k-th interval plus an m-th interval is a (k+m-1)th interval. An interval with p semitones plus one with q semitones is one with (p+q) semitones. Given two intervals, get their sum. Relations between interval and semitones is listed below.

Interval Double
Diminished
Diminished Minor Perfect Major Augmented Double
Augmented
unison
(1st)
-2* -1* - 0 - 1 2
2nd -1* 0 1 - 2 3 4
3rd 1 2 3 - 4 5 6
4th 3 4 - 5 - 6 7
5th 5 6 - 7 - 8 9
6th 6 7 8 - 9 10 11
7th 8 9 10 - 11 12 13
octave
(8th)
10 11 - 12 - 13 14

* Negative distance doesn't exist but it can be added 12 until non-negative

For larger interval, k-th interval has 12 more semitones than the same type of (k-7)-th interval. Triple Augmented is 1 more semitone than Double Augmented, Triple Diminished is 1 less semitone than Double Diminished, etc.

IO format

  • The interval would likely get inputted as one argument
  • You can take Double Diminished/Diminished/Minor/Perfect/Major/Augmented/Double Augmented as -2/-1/a/b/c/1/2, where a, b, c are zero or non-integer
  • You can take Double Diminished/Diminished/Minor/Perfect/Major/Augmented/Double Augmented as -3/-2/-1/0/1/2/3
  • Same applies to output

Test cases

Minor 2nd + Major 3rd = Perfect 4th
Major 2nd + Major 2nd = Major 3rd
Major 3rd + Major 3rd = Augmented 5th
Augmented 2nd + Augmented 3rd = Triple Augmented 4th
Double Diminished 6th + Double Diminished 7th = 5 Times Diminished 12th
Augmented 1st + Minor 2nd = Major 2nd
l4m2
  • 28.5k
  • 12
  • 14