Menu

wxArithmetic Functional Requirements

Andrei Nagy

wxArithmetic Functional Requirements

1. Introduction

wxArithmetic is a simple arithmetic exercise application. It selects one of the four operations (+, -, *, /) randomly and generates random operands based on internal variables.
Maximum operands variables are defined internally on first start, and on application close they are saved in wxArithmetic.xml.

2. Features

2.1 Adaptive difficulty

The user's progress is recorded in counters for the total given calculations for the specific operation (+, -, *, /) and the right answers for the same operation.
When the sampling period is over (DIF_PERIOD), the counters are compared with RIGHTPERCENT and WRONGPERCENT. A further comparation is done to ensure the first operand is no more than 10 times larger than the second.
The maximum operand variables are modified according to the user's ability. These are saved at on application quit.

2.2 XML file

wxArithmetic.xml stores the maximum operand variables between sessions. Entries are identified by date and time, so the file can later be used in a graph.
The .xml file is read at program start and writen to at program quit.

2.3 Options dialog

An Options dialog is provided to allow the user to manually set the difficulty.

2.4 Performance chart

The performance chart is provided to display the user's progress. This plots the "correctness factor" ( right answers / total problems ) against the number of sessions played. Please note: this function does not adjust for periods of time when the game was not played.


Related

Wiki: Home