Post History
#7: Post edited
Define a mathematical expression in English [released]
# Background Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865). # Challenge Write a program that translates a mathematical expression using English with the following specifications: - The expression can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic. - If the target character(s) is a/are number(s): - The number range can only be from `-999` up to `999`. - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`. - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`. - If the number is negative, use `negative` before the number. For example, `-13` is `negative thirteen`. - If the target character is a letter: - The input should only take 1 letter. - When put on the result, the letter must be capitalized. - If the target character is a symbol: - `+` is `plus`. - `-` is `minus`. - `*` is `times`. - `/` is `divided by`. - `=` is `equals` or `is equal to`. - Parentheses shouldn't be inputted. - Whitespaces are ignored. - Any character that's not part of the specification is ignored. - Trailing whitespaces and newlines are allowed. - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins! # Test Cases ```none // Input # Output 14 fourteen 1+2 one plus two 53 /3 fifty-three divided by three 6 +2* 7 =20 six plus two times seven equals twenty 8*8*8 * 8 * 8 -1 eight times eight times eight times eight times eight minus one = 4 is equal to four x + y = z X plus Y equals Z -5 +- 6 negative five plus negative six Testcases by [**@celtschk**](https://codegolf.codidact.com/comments/thread/4623#comment-13896): 500 five hundred 129 one hundred and twenty-nine 0+0=0 zero plus zero equals zero 0 -- 0 = 0 zero minus negative zero equals zero ```
#6: Post edited
Define a mathematical expression in English [released
- Define a mathematical expression in English [released]
#5: Post edited
Define a mathematical expression in English [in test (beta)]
- Define a mathematical expression in English [released
- # Background
- Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865).
- # Challenge
- Write a program that translates a mathematical expression using English with the following specifications:
- - The expression can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic.
- - If the target character(s) is a/are number(s):
- - The number range can only be from `-999` up to `999`.- - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`.- - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`.- - If the number is negative, use `negative` before the number. For example, `-13` is `negative thirteen`.- - If the target character is a letter:
- - The input should only take 1 letter.- - When put on the result, the letter must be capitalized.- - If the target character is a symbol:
- - `+` is `plus`.- - `-` is `minus`.- - `*` is `times`.- - `/` is `divided by`.- - `=` is `equals` or `is equal to`.- - Parentheses shouldn't be inputted.
- - Whitespaces are ignored.
- - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins!
- # Test Cases
- ```none
- // Input
- # Output
- 14
- fourteen
- 1+2
1 plus 2- 53 /3
53 divided by 3- 6 +2* 7 =20
6 plus 2 times 7 equals twenty- 8*8*8 * 8 * 8 -1
8 times 8 times 8 times 8 times 8 minus 1- = 4
is equal to 4- x + y = z
- X plus Y equals Z
- -5 +- 6
negative 5 plus negative 6- ```
- # Background
- Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865).
- # Challenge
- Write a program that translates a mathematical expression using English with the following specifications:
- - The expression can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic.
- - If the target character(s) is a/are number(s):
- - The number range can only be from `-999` up to `999`.
- - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`.
- - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`.
- - If the number is negative, use `negative` before the number. For example, `-13` is `negative thirteen`.
- - If the target character is a letter:
- - The input should only take 1 letter.
- - When put on the result, the letter must be capitalized.
- - If the target character is a symbol:
- - `+` is `plus`.
- - `-` is `minus`.
- - `*` is `times`.
- - `/` is `divided by`.
- - `=` is `equals` or `is equal to`.
- - Parentheses shouldn't be inputted.
- - Whitespaces are ignored.
- - Any character that's not part of the specification is ignored.
- - Trailing whitespaces and newlines are allowed.
- - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins!
- # Test Cases
- ```none
- // Input
- # Output
- 14
- fourteen
- 1+2
- one plus two
- 53 /3
- fifty-three divided by three
- 6 +2* 7 =20
- six plus two times seven equals twenty
- 8*8*8 * 8 * 8 -1
- eight times eight times eight times eight times eight minus one
- = 4
- is equal to four
- x + y = z
- X plus Y equals Z
- -5 +- 6
- negative five plus negative six
- Testcases by [**@celtschk**](https://codegolf.codidact.com/comments/thread/4623#comment-13896):
- 500
- five hundred
- 129
- one hundred and twenty-nine
- 0+0=0
- zero plus zero equals zero
- 0 -- 0 = 0
- zero minus negative zero equals zero
- ```
#4: Post edited
Define a mathematical expression in English
- Define a mathematical expression in English [in test (beta)]
#3: Post edited
Define an equation in English
- Define a mathematical expression in English
- # Background
- Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865).
- # Challenge
Write a program that translates an equation using English with the following specifications:- The equation can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic.- - If the target character(s) is a/are number(s):
- - - The number range can only be from `-999` up to `999`.
- - - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`.
- - - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`.
- - - If the number is negative, use `negative` before the number. For example, `-13` is `negative thirteen`.
- - If the target character is a letter:
- - - The input should only take 1 letter.
- - - When put on the result, the letter must be capitalized.
- - If the target character is a symbol:
- - - `+` is `plus`.
- - - `-` is `minus`.
- - - `*` is `times`.
- - - `/` is `divided by`.
- - - `=` is `equals` or `is equal to`.
- - Parentheses shouldn't be inputted.
- - Whitespaces are ignored.
- - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins!
- # Test Cases
- ```none
- // Input
- # Output
- 14
- fourteen
- 1+2
- 1 plus 2
- 53 /3
- 53 divided by 3
- 6 +2* 7 =20
- 6 plus 2 times 7 equals twenty
- 8*8*8 * 8 * 8 -1
- 8 times 8 times 8 times 8 times 8 minus 1
- = 4
- is equal to 4
- x + y = z
- X plus Y equals Z
- -5 +- 6
- negative 5 plus negative 6
- ```
- # Background
- Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865).
- # Challenge
- Write a program that translates a mathematical expression using English with the following specifications:
- - The expression can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic.
- - If the target character(s) is a/are number(s):
- - - The number range can only be from `-999` up to `999`.
- - - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`.
- - - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`.
- - - If the number is negative, use `negative` before the number. For example, `-13` is `negative thirteen`.
- - If the target character is a letter:
- - - The input should only take 1 letter.
- - - When put on the result, the letter must be capitalized.
- - If the target character is a symbol:
- - - `+` is `plus`.
- - - `-` is `minus`.
- - - `*` is `times`.
- - - `/` is `divided by`.
- - - `=` is `equals` or `is equal to`.
- - Parentheses shouldn't be inputted.
- - Whitespaces are ignored.
- - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins!
- # Test Cases
- ```none
- // Input
- # Output
- 14
- fourteen
- 1+2
- 1 plus 2
- 53 /3
- 53 divided by 3
- 6 +2* 7 =20
- 6 plus 2 times 7 equals twenty
- 8*8*8 * 8 * 8 -1
- 8 times 8 times 8 times 8 times 8 minus 1
- = 4
- is equal to 4
- x + y = z
- X plus Y equals Z
- -5 +- 6
- negative 5 plus negative 6
- ```
#2: Post edited
- # Background
- Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865).
- # Challenge
- Write a program that translates an equation using English with the following specifications:
- - The equation can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic.
- - If the target character(s) is a/are number(s):
- - - The number range can only be from `-999` up to `999`.
- - - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`.
- - - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`.
- - If the target character is a letter:
- - - The input should only take 1 letter.
- - - When put on the result, the letter must be capitalized.
- - If the target character is a symbol:
- - - `+` is `plus`.
- - - `-` is `minus`.
- - - `*` is `times`.
- - - `/` is `divided by`.
- - - `=` is `equals` or `is equal to`.
- - Parentheses shouldn't be inputted.
- - Whitespaces are ignored.
- - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins!
- # Test Cases
- ```none
- // Input
- # Output
- 14
- fourteen
- 1+2
- 1 plus 2
- 53 /3
- 53 divided by 3
- 6 +2* 7 =20
- 6 plus 2 times 7 equals twenty
- 8*8*8 * 8 * 8 -1
- 8 times 8 times 8 times 8 times 8 minus 1
- = 4
- is equal to 4
- x + y = z
- X plus Y equals Z
- ```
- # Background
- Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865).
- # Challenge
- Write a program that translates an equation using English with the following specifications:
- - The equation can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic.
- - If the target character(s) is a/are number(s):
- - - The number range can only be from `-999` up to `999`.
- - - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`.
- - - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`.
- - - If the number is negative, use `negative` before the number. For example, `-13` is `negative thirteen`.
- - If the target character is a letter:
- - - The input should only take 1 letter.
- - - When put on the result, the letter must be capitalized.
- - If the target character is a symbol:
- - - `+` is `plus`.
- - - `-` is `minus`.
- - - `*` is `times`.
- - - `/` is `divided by`.
- - - `=` is `equals` or `is equal to`.
- - Parentheses shouldn't be inputted.
- - Whitespaces are ignored.
- - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins!
- # Test Cases
- ```none
- // Input
- # Output
- 14
- fourteen
- 1+2
- 1 plus 2
- 53 /3
- 53 divided by 3
- 6 +2* 7 =20
- 6 plus 2 times 7 equals twenty
- 8*8*8 * 8 * 8 -1
- 8 times 8 times 8 times 8 times 8 minus 1
- = 4
- is equal to 4
- x + y = z
- X plus Y equals Z
- -5 +- 6
- negative 5 plus negative 6
- ```
#1: Initial revision
Define an equation in English
# Background Inspired by [this challenge that is also a mathematical English translator](https://codegolf.codidact.com/posts/283865). # Challenge Write a program that translates an equation using English with the following specifications: - The equation can only take in numbers, letters from the English alphabet, the equal sign, and the arithmetic operators. No, exponents aren't arithmetic. - If the target character(s) is a/are number(s): - - The number range can only be from `-999` up to `999`. - - When in the tens place, use the dash (`-`) when there are spaced numberings. For example, `21` is `twenty-one`. - - When in the hundreds place, add `and` to the string if the tens and/or the ones place aren't empty. For example, `125` is `one hundred and twenty-five`. - If the target character is a letter: - - The input should only take 1 letter. - - When put on the result, the letter must be capitalized. - If the target character is a symbol: - - `+` is `plus`. - - `-` is `minus`. - - `*` is `times`. - - `/` is `divided by`. - - `=` is `equals` or `is equal to`. - Parentheses shouldn't be inputted. - Whitespaces are ignored. - This is <a class="badge is-tag">code-golf</a>, so the shortest program for each language wins! # Test Cases ```none // Input # Output 14 fourteen 1+2 1 plus 2 53 /3 53 divided by 3 6 +2* 7 =20 6 plus 2 times 7 equals twenty 8*8*8 * 8 * 8 -1 8 times 8 times 8 times 8 times 8 minus 1 = 4 is equal to 4 x + y = z X plus Y equals Z ```