Converting between fractional, binary, and decimal representations

The demo on this page was built in a very short time with the Cognitive Tutor Authoring Tools (CTAT, see, entirely without writing code. We use it to illustrate some of the features that can easily be included in tutors built with CTAT without programming. We encourage you to try out these features. To restart the demo, simply click the reload button in your browser.

Step-by-step Feedback

The demo provides feedback for each step, with red/green color coding.

Notational Variants

Notational variants that students are likely to use are accepted, so as not to punish students for typing answers that are correct but do not match the expected answer character-by-character. For example, extra white space, trailing 0s, and omitting a 0 before the decimal/binary point are allowed.


On the assumption that division in decimal notation is not part of the learning objectives in this unit, the demo helps out students by calculating answers in the "Decimal representation" column. That is, students can type in 25/16 (say) and the tutor will replace this input with the decimal notation, provided the answer is correct. The author has full control over this kind of input substitution.


Hints for all steps are provided, which can be accessed by clicking the Hint button. A tutor author can write multiple levels of hints for each step. In the current demo, for most steps, the hint only states the answer. On one of the steps, however (namely, binary representation for 25/16) we provide multi-level hints, in which the answer is not just given, but also explained. Using the previous and next buttons, the student can flip through the hints. The software can include statistics about hint use in teachers' reports and it can assign extra problems based on hint use (or incorrect answers), so as to discourage students from overly relying on hints. In practice, hint overuse tends not to be a problem, and there is evidence that careful use of hints is associated with better learning outcomes.

Conditional Hints

On some steps, the hints change depending on the order in which steps are done. For instance, in row 4 (Binary representation = 10.1011), the hint for the third cell (Decimal representation) varies depending on whether the first cell (Fractional value) has been filled out. If there is no fractional value (i.e., first call is empty), the hint for the Decimal representation will say "Find the fractional value of the binary number 10.1011 first" (redirecting the student to the first cell in the given row). If there is a fractional value (i.e., first cell has been filled out), the hint for the Decimal representation will say: "Type in the fractional value 43/16 here and the tutor will .... " Tutor authors have full control over whether hints are conditional or not; authoring conditional hints is only marginally more work than authoring fixed hints. In practice, one probably wants to add conditional hints only when tutor log data indicates that a particular step is very challenging.

Download the files used in this example

You may pick and choose amongst these and many more features.