Click here to Skip to main content
15,905,614 members
Articles / Desktop Programming / WPF


Rate me:
Please Sign up or sign in to vote.
5.00/5 (9 votes)
17 Feb 2015CPOL10 min read 22.7K   11   2
5-in-1 educational software package for Tablet PC/Win8: Fraction Calculator, Prime Factoring, Linear, Quadratic and System of Equation solvers (AIC-2013)

Project Status

Software package Edumatter-MT was a Round-1 winning application submission to Intel® App Innovation Contest 2013 advanced to Round-2 in the following category/platform:

  • Platform: Tablet PC equipped with Windows 8 desktop edition
  • Category: Education

Contest submission is optimized for Win8 desktop/Tablet PC, compatible with Win7

Overview of the Application

Proposed educational software applications suite contains “5-in-1” School Math Calculators and Equation Solvers modules listed below:

  • FC12 Fraction Calculator
  • PF12 Prime Factoring Calculator
  • LE12 Linear Equation Solver
  • SE12 System of Linear Equation Solver
  • QE12 Quadratic Equation Solver

All modules can operate on fractions, integer, mixed and decimal numbers.

Technical merits and broader impact of the application

Application implements novel Multi-Modal User Interface (MMUI) that allows standard PC keyboard/mouse operations, touch-screen operations (including digital pen) typical for Tablet PC and Ultrabooks, and also includes speech-enhancement features: Voice instructions via TTS. All editions implement calculation history log that can be exported to external text file and retrieved either from withing the app, or by any text editor, like popular Microsoft Notepad. Professional edition contains the link to extension "Find Tutor" which utilizes Microsoft online Bing mapping technology [4, 11]. For more implementation details please refer to the following sections.

Intended uses for the Application

Feature/Edition matrix and potential use cases are listed below in Table 1 and Table 2:

Table 1: Individual Users Features/Editions matrix for most common use cases
Edition Modules/Licensing Calc. Log Log I/O Speech
Standard All 5 modules, single License Yes Yes TTS
Pro Same as Standard, plus ASR Yes Yes ASR/TTS
Enterprise Same as "Pro" w/bulk licensing availability Yes Yes ASR/TTS
Table 2: Potential use-cases of proposed app
User Use case Edition
Students High/Middle School Math Students  Any
Self-pace Homeschooling and self-paced education  Any
Teachers Math Teachers in Public/private schools Pro
Tutors Private tutors Pro
Edu Educational Agencies (Gov) and other Institutions Enterprise
STEM Science, Technology, Math and Engineering professionals Pro

Development approach

  • From the technical perspective, proposed application should utilize the novel UI features of Tablet PC, UI capability of Windows 8 OS platform, .NET/WPF framework and speech technology (TTS/ASR). Development strategy will be based on the cornerstone principle of separation of programmatic concerns, namely: all layout and aesthetic enhancement to be achieved via WPF/XAML, and algorithmic part to be implemented via managed code compiled in a single .NET assembly (as it was done in existing application).
  • From PM perspective the body of works corresponds to change management phase with emphasis on the maximum re-use of the existing code base.

Language, Framework, Tools

Application code base will be developed using C# language and core .NET framework libraries, including WPF/XAML and speech object libraries.

About Author

Dr. Alexander Bell is a Microsoft technology veteran with development experience span from DOS to Win 8. He actively participates in digital life of online development communities (published 19 article and 36 tips on Codeproject). He is personally credited for the completion of 10+ of enterprise level SDLC projects. Beyond his professional duties, Alexander is deeply devoted to interactive WebTV and educational technologies: his online "Multiple Fraction Calculator" is rated #1 on on Google for many years [4].  He was an early adopter of Microsoft Bing mapping technology [6].

Contest Metrics (Round 1 & Round 2)

Innovation and User Experience

Proposed application will be built upon several innovative ideas:

  • User Experience (UX) improvement via efficient Multi-Modal User Interface (MMUI) utilizing touch-screen (multi-touch) features of Tablet PC and .NET speech enhancement (ASR and TTS)
  • Single-window solution providing intuitive navigation between functional areas
  • Aesthetic improvement achieved via novel border-less WPF windows implementation
Usage of Tablet PC key technical enabling vectors
  • Multi-Modal UI optimized for touch-screen and digital pen operations.
  • Voice feedback including error, instructional and notification messaging via TTS
  • Voice commands via ASR (optional, included only in Pro versions)
  • Display quality of Tablet PC, in particular its high-resolution that allows high data density/feature aggregation in a single Window app
  • Availability of external HID, like detachable keyboard/mouse, stylus or digitizer pen further improves UX
  • Orientation sensor to switch between portrait/landscape
Application Viability and Significance for selected Category (Education)
  • Digital educational technologies collectively referred by umbrella term "e-Learning" is most important transformational forces of modern time educational reform. e-Lerning allows active participation of various societal groups in educational process, including both educators and students. It provides the universal access to quality education for students in economically disadvantages of geographically distant areas of the world. In addition to this, tremendous cost reduction of public education could be achieved by moving to the digitizing education.
Descriptive clarity, scope and coverage

Detailed description of Submission Ideas on conceptual and implementation levels and corresponding programmatic tasks/challenges/solutions is provided in the following section (Background and Points of Interest). Multiple screenshots included in the body of the article illuminate the core concept of UI implementation and usage.

User Acceptance Criteria and Market Perspective

User-Acceptance Test (UAT) is comprised of multiple User Acceptance Criteria, listed below

  • Installation, including Setup/De-Install
  • UI efficiency (keyboard/mouse operations, touch-screen, digital pen and Voice messaging)
  • Core functionality: calculations and equation solving
  • Data Export operations

Market perspective is based on the potential user-base estimates, importance and competitive advantages of proposed Application

Demo Application Performance Metrics

This section will be completed at the end of UAT


The original solution Edumatter-M12 has been submitted to the "The Windows 8* & Ultrabook™ App Innovation Contest" (2012) and won the submission award. It's been discussed in details on Codeproject [1-3]. COTS version of the application is currently available at store [6]. Prior to the release of the Windows desktop version, this educational software has been developed as web application and put into public domain free of charge. The most popular "Multiple fraction calculator" is rated #1 on Google for many years [4].

Submitted version 'Edumatter-MT'

Submitted educational application software Edumatter-MT for Windows 8 desktop/Tablet PC contains “5-in-1” School Math Calculators and Equation Solvers modules listed below:

  • FC12 Fraction Calculator
  • PF12 Prime Factoring Calculator 
  • LE12 Linear Equation Solver
  • SE12 System of Linear Equation Solver 
  • QE12 Quadratic Equation Solver  


Each module provides unique capability of processing any combination of fractions (proper/improper), whole or mixed numbers, and decimals. Calculation results are also shown in both fractional and decimal forms except for quadratic equation solver (QE12), which outputs either real or complex numbers in decimal form only (for the obvious reason that the roots of the latter can be irrational numbers).

Fraction Calculator FC12

Fraction Calculator FC12 extends the functionality of the popular online Multiple Fractions Calculator [7] (note: its online counterpart is topping Google search list for many years). Coding solutions were partially discussed in Codeproject articles [5,6].

FC-12 can perform binary and unary arithmetic operations on any combinations of whole and mixed number, fractions (proper/improper), and decimal numbers (positive/negative), like: 4, 8.75, 2/3, 9/4, 3 5/7, -6 2/3, 9, 8.75, -12. Any fraction or mixed number can be reduced to the lowest terms. Any improper fraction could be converted to mixed number and vice versa. As an additional convenience feature, all calculation results appear in “History” text box, so they can be copied to computer “Clip Board” memory, or stored in the standard text file for future use.

Image 1

Fig. 1: Fraction Calculator FC-12, sample screenshot

Prime Factoring Calculator PF12

As a reminder, prime factoring refers to finding non-trivial factors of any positive integer (whole) number, where trivial factors of any whole number are just the number 1 and the number itself. Any other factors are considered non-trivial, for example, number 6 has two non-trivial factors: 6 = 2*3.

Prime Factoring Calculator PF12 implements effective computational algorithm that can perform fast prime factoring of any integer number up to 18 digits (!), essentially unparalleled in any commercially available school math calculators. Results are displayed in calculation history text box and also can be copied to computer “Clip Board” memory, or stored in the standard text file for future use.

Image 2

Fig. 2: Prime Factoring Calculator PF-12, sample screenshot

Linear Equation Solver LE12

As a reminder, Linear Equation in its canonical form can be written as:
AX + B = C,
where numbers A, B and C are called the coefficients of the equation. The general solution to the Linear equation is: X = (C-B)/A

Linear Equation Solver LE12 is capable of solving linear equation with fractional or whole coefficients. Results are displayed as both fractions and equivalent decimals in calculation history text box, and also can be copied to computer “Clip Board” memory, or stored in the standard text file for future use.

Image 3

 Fig. 3: Linear Equation Solver LE-12, sample screenshot 

System of Linear Equation Solver SE12

As a reminder, system of linear equations in its canonical form can be written as:
A1X + B1Y= C1
A2X + B2Y= C2

System of Linear Equation Solver SE12 is capable of solving system of linear equations with fractional, decimal or integer coefficients (see sample screenshot #4 included in slide show [1]). Results are displayed as fractions and equivalent decimals in calculation history text box, and also can be copied to computer “Clip Board” memory, or stored in the standard text file for future use.

Image 4

Fig. 3: System of Linear Equations Solver SE-12, sample screenshot

Quadratic Equation Solver QE12

As a reminder, quadratic equations in its canonical form can be written as: Ax^2+Bx+C=0.

Quadratic Equation Solver QE12 is capable of solving quadratic equations with fractional or whole coefficients. Its output can be either real or complex numbers presented in decimal form only: as we shall know from the theory (see recommended links attached to the article), the solution to quadratic equation might be irrational numbers, thus it could not be presented by any finite fraction. As in all previous cases, calculation results appear in history box and can be copied to computer “Clip Board”, or stored in the standard text file.

Image 5

Fig. 4: Quadratic Equation Solver QE-12, sample screenshot

Points of Interest

Programmatic Challenges

There are several potential programmatic challenges corresponding to the tasks partially listed below:

  • Novel borderless WPF windows with custom control box
  • Touch-screen operations and voice commands set
  • Reliable I/O operations on clients TabletPC
  • Efficient high-quality voice-messaging


The author has been working on speech-enhanced applications for more than a decade and published multiple articles covering two cornerstone technologies, namely: TTS and ASR [8, 9]. Speech-enhancement is planned for proposed application, including extended set of TTS voice messages (error messages, instructional and notification messages) and optional ASR voice commands.

Using the code

This section will be continuously updated as project progressing.


  1. Edumatter M12: School Math Calculators and Equation Solvers (CodeProject article)
  2. Fast Integer Algorithms: GCD and LCM (CodeProject article)
  3. Fast Greatest Common Divisor (GCD) Algorithm (Codeproject article)


  • 2004 online multiple Fraction Calculator has been released
  • 2005 online Prime Factoring Calculator has been released
  • 2006 equation solvers web apps has been released
  • 2009 efficient prime factoring algorithm has been developed
  • 2010 prime factoring algorithm utilizing TPL has been developed
  • 2011 Integrated package Edumatter M12 for Windows has been prototyped
  • 2012 "Edumatter M-12" has been published on the Intel's AppUp store
  • 2012 "FindTutor-2013" app extension version has been published on the Intel's AppUp store
  • 2013 Calculator Volta-814D has been released implementing novel borderless WPF UI
  • Aug 19, 2013 Application article has been submitted to the App Innovation Contest  (AIC-2013)
  • Oct 15, 2013 Application package submitted to Round 2 of the AIC-2013

Acronyms and Abbreviations

  • AIO All-In-One
  • ASR Automatic Speech Recognition
  • BI Business Intelligence
  • HID Human Interface Device
  • GUI Graphical User Interface
  • MMUI Multi-Modal User Interface (multi-touch, speech-enhanced)
  • SQL CE SQL Compact Edition
  • TPL Task Parallel Library
  • TTS Text-to-Speech
  • UAT User Acceptance Test
  • UI User Interface
  • UX User eXperience
  • WPF Windows Presentation Foundation
  • XAML Extensible Application Markup Language


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Written By
United States United States
Dr. Alexander Bell (aka DrABell), a seasoned full-stack DevOps and Data Engineer holds PhD in Electrical and Computer Engineering, authored 37 inventions and published 100+ technical articles, including those popular at CodeProject totaling 4M+ views. Alex pioneered AI/NLP, Cloud development, .NET/Java technology stacks, advanced SQL extensions, HTML5/CSS3 and other important Web technologies; developed multiple award-winning Web/Win apps submitted to App Innovation Contests (AIC 2012/2013). Currently focused on Microsoft Azure Cloud and GitHub Copilot AI-enabled DevOps.

  1. Quiz Engine powered by Azure Cloud (Dev Challenge article)
  2. 'enRoute': Real-time NY City Bus Tracking Web App (IoT on Azure)
  3. Azure web app: Engineering Calculator VOLTMATTER
  4. Azure: NYC real-time bus tracking app
  5. HTML5/CSS3 graphic enhancement: buttons, inputs
  6. Aggregate Product function extends SQL
  7. HTML5 Tables Formatting: Alternate Rows, Color Gradients, Shadows
  8. YouTube™ API for ASP.NET

Comments and Discussions

GeneralThanks! Pin
Kevin Priddle21-Aug-13 10:42
professionalKevin Priddle21-Aug-13 10:42 
Ahhh an entry for the Education category now, good stuff.

Thumbs Up | :thumbsup:
Kevin Priddle

Editor and Special Projects Manager | Developer Media

GeneralRe: Thanks! Pin
DrABELL21-Aug-13 12:10
DrABELL21-Aug-13 12:10 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.