Hi everyone. Again, I'd like to ask for some help.

Question variables in the problematic question:

Vx: rand([200,250,300,350,400,450,500,550,600,650,750,1150,1350,1700,2100]); /* objem roztoku NaCl v cm3*/

mx: rand_with_step(2,15,1); /* hmotnost tuheho NaCl v roztoku v g*/

vztah_c: ((1000*m)/(M*V));

MolHmot: 58.0; /* Molova hmotnost NaCl */

ta1: vztah_c;

vztah_dopl: decimalplaces(subst([m=mx,V=Vx,M=MolHmot],vztah_c),2);

stack_unit_other_unit_code:[mol, dm^-3];

ta2: stackunits((vztah_dopl),mol*dm^-3);

stack_unit_si_declare(true);

Here I tried to apply some sort of commands that would ensure the student enters his numerical answer with a unit, and it would be, therefore, correct. The required unit is mol*dm^-3. Of course, this variables concerning the unit are useless. Below I provide some other information about the question.

The student is supposed to calculate molar concentration for NaCl in its solution of V={@Vx@} cm^{3},** **which contains m={@mx@} g NaCI. Molar mass of NaCl = 58.

The inputs are:

ans1 is an algebraic input, the model answer is: ta1

ans2 is an alg. input as well, and the model answer is: ta2

The response trees:

Potential response tree: prt1 Node 1: Answer test: AlgEquiv; SAns: ans1; TAns: ta1

Potential response tree: prt2 Node 1: Answer test: AlgEquiv; SAns: ans2; TAns: ta2

So, how should I change the variables to make sure the student can enter the correct numerical answer with the correct unit? Thank you in advance.