I’m not sure that you have understood the problem perfectly. (or at least that is what I suspect).
The internal representation of the temperature is one thing (fahrenheit or celsius, it is up to you). But depending on that decision, it will affect how the setter and getter work.
That is because if you choose to store the value in celsius initially (by making the constructor do the conversion) then the setter/getter do not need to convert it again. (we are told for eg that the setter input is a celsius unit, and the getter output is celsius as well).
So if the internal representation of the temperature is celsius, the only conversion that happens will happen in the constructor.
BUT, if the internal representation is fahrenheit.
Then you must do a conversion in both the setter and the getter as we are told that the setter only accepts celsius values and the getter only returns celsius results.
In your specific case, your constructor is taking the input value and storing it as-is.
That means your internal representation is fahrenheit.
It also means that everytime someone calls get you must convert the internal value to celsius.
And everytime someone calls set, you must convert the given input (unit celsius) to the internal fahrenheit representation to store it.
Final issue then is, which equation does what conversion?
The equation that starts with F= should be used in your setter.
(right now you are using the conversion to celsius in your setter even though your internal representation is Fahrenheit)
The equation that starts with C= should be used in your getter.
(again you are using the wrong one there)
I realize that this may leave you further confused.
I’m sorry but it is just a combination of things going on here.
1- understand the math (the equations given)
2- understand the internal representation of the temperature in your class
3- understand the requirements of the inputs and outputs for the setters/getters
You will need to understand all 3 points.