Ok, I've looked at your question.

1. The teacher's answer must include a way to say "this is a numerical quantity to 1 decimal place". So you must define the teacher's answer as

d:dispdp(c*100,1)

Details of the "dispdp" function are here: https://stack2.maths.ed.ac.uk/demo2018/question/type/stack/doc/doc.php/CAS/Numbers.md

2. I suggest you use the "numerical" input type with options

mindp:1, maxdp:1

This ensures that on validation the student must type in exactly one decimal place, otherwise the response is "invalid". I don't think this question is testing if a student knows what 1 dp is, so it should be in validation.

See https://stack2.maths.ed.ac.uk/demo2018/question/type/stack/doc/doc.php/Authoring/Numerical_input.md

for more details.

3. You need to use the "NumDecPlaces" answer test to test if the answer is a correct number to the right number of decimal placed. You originally had algebraic equivalence in the potential response tree. There are also docs on the different answer tests. Note here you need the option "1" to indicate one dp!

4. Your question example has no "question tests", which help ensure your random versions work. I've added some.

Numerical rounding is tricky, and is something we have improved greatly in the recent version of STACK.

Chris