Factor the problem into three functions. one function converts a
one-character string into an int, or gives an exception if the
character. isn't uppercase ASCII.
Second function converts a small int into a string containing one
uppercase ASCII letter, throwing an exception if negative or above 25.
Third function takes two string arguents, throws an exception if either
of them is not exactly one character in length. Then it calls the first
function twice, adds the results, modulos it, and calls the second
function, returning its return value.
Which of these is giving you trouble? Notice you can use the first two
functions to test each other.
--
DaveA