I believe you would pass the scale to the methods. Sorry I'm not being very clear, but I am confused myself. I know that the method should take temp1 and whatever scale it is and add another temp. The second temp should convert it's scale to the same one as temp1 and then do the addition.

The Temperature object knows the scale of the temperature value it has, then the add needs to convert the value passed to it to be in the same scale and then add the two values together and create a new Temperature object with that temperature and scale.

The class should take what ever scale the user passes to it.
BUT, when it stores its values, they should only be in one scale. That way, the class will never have to evaluate its own values because they will ONLY ever be in one scale.

Is that a question?

Is the program working now? If you need further help, you will need to ask questions.