Sha256: 2697dce7323d682e885e5356c89bc12f17d8954eee232a3ef5b5fa5992d45a10

Contents?: true

Size: 1.37 KB

Versions: 183

Compression:

Stored size: 1.37 KB

Contents

# Wordy

Parse and evaluate simple math word problems returning the answer as an integer.


## Iteration 1 — Addition

Add two numbers together.

> What is 5 plus 13?

Evaluates to 18.

Handle large numbers and negative numbers.


## Iteration 2 — Subtraction, Multiplication and Division

Now, perform the other three operations.

> What is 7 minus 5?

2

> What is 6 multiplied by 4?

24

> What is 25 divided by 5?

5


## Iteration 3 — Multiple Operations

Handle a set of operations, in sequence.

Since these are verbal word problems, evaluate the expression from
left-to-right, _ignoring the typical order of operations._

> What is 5 plus 13 plus 6?

24

> What is 3 plus 2 multiplied by 3?

15  (i.e. not 9)


## Bonus — Exponentials

If you'd like, handle exponentials.

> What is 2 raised to the 5th power?

32


## Hints
- To parse the text, you could try to use the [FParsec](http://www.quanttec.com/fparsec/tutorial.html) library.
- As an exercise, you could try to represent a question as an [Abstract Syntax Tree](https://en.wikipedia.org/wiki/Abstract_syntax_tree).

## Source

Inspired by one of the generated questions in the Extreme Startup game. [https://github.com/rchatley/extreme_startup](https://github.com/rchatley/extreme_startup)

## Submitting Incomplete Solutions
It's possible to submit an incomplete solution so you can see how others have completed the exercise.

Version data entries

183 entries across 183 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.179 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.178 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.177 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.176 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.175 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.174 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.173 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.172 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.171 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.170 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.169 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.167 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.166 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.165 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.164 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.163 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.162 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.161 tracks/fsharp/exercises/wordy/README.md
trackler-2.2.1.160 tracks/fsharp/exercises/wordy/README.md