Giter Club home page Giter Club logo

funmath's Introduction

FunMath Windows Application.

Objectives

  1. Generate story style math problems given a configuration that regulates the types of arithmetic operations and the numbers to be used.
  2. Generate simple equation problems that help kids with basic arithmetics.

Arithmetic operation generator.

An arithmetic operation is a representation of a simple X + Y = Z equation. The operations are formed by two operands, one operator sign (addition, subtraction, multiplication, division) and the total.

Three variations of problems are generated for each arithmetic operation:

  1. Find the left operand: X + 2 = 5
  2. Find the right operand: 3 + X = 5
  3. Find the total: 3 + 2 = X

The generator is given a maximum number which is used with two rules:

  1. The number is used as the upper limit to any of the problems. None of the problems generated will go over it.
  2. The number is used to generate all the operands that respect the first rule and ensure all operands are covered as the operations are generated.

As an exmple, if the number 10 is given as the maximum. Then the generator will use all the numbers from 0 to 10 to create operations. With the restriction that the operation cannot exceed 10 itself.

Story generation

Stories are generated by combining story templates, predefined story elements and a generated Arithmetic Operation. Each story template defines what type problem and which operator can be used with it. During run time, when an Arithmetic Operation is generated, it is used as input for the Story generation which selects among the adequate templates available.

Here are some examples of stories that map to each of the three variations of problems:

  1. John has some bananas, then he buys 2 more. Now John has 5. How many did he had at the beginning?.
  2. John has 3 bananas, then he buys some more. Now John has 5. How many bananas did he buy?.
  3. John has 3 bananas, then he buys 2 more. How many bananas does John have now?.

funmath's People

Contributors

hologramas avatar

Watchers

 avatar  avatar

funmath's Issues

When 0 and 1 are picked as factors or operands of problems. the stories don't read well

The current implementation tries to be fair with all numbers within the MaxTotal which cases 0 and 1 to show up frequently and makes some problems way to easy or just weird to read.

In the case of the division it just doesn't read well at all.

Maybe on future versions we can exclude 1 in the division case, or we can use special formatting for 1. Or we could let a story specify some restrictions that won't read well with the description provided.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.