### ToRoman
Table of Contents
A Minimal Library for Roman Numeral Operations.
I know you find this project amazing and beautiful i know that feeling there but Please do take your time to read our contributing.md docs first before you make your first contribution.
- Convert Arabic numerals to Roman numerals β ¦
- Convert Roman numerals to Arabic numerals π’
- Validate Roman numerals β
- Add Roman numerals β
- Subtract Roman numerals β
- Get Roman numerals within a range π‘
To get started with ToRoman,
npm i toroman
Using the ToRoman package is very simple and elaborate.
const roman = require("toRoman");
/**
* toRoman - Convert an integer to Roman numerals
* @param { number } value Integer to be converted to Roman numerals
* @returns { string } Roman numeral representation of the input value
*/
function toRoman(value: number): string | Error {}
π΅ Example
console.log(roman.toRoman(765));
// Returns DCCLXV
/**
* fromRoman - Convert Roman numeral to integer
* @param { string } value Roman numeral to be converted to integer
* @returns { number } Integer representation of the input value
*/
export function fromRoman(value: string): number | Error {}
π΅ Example
console.log(roman.fromRoman("DCCLXV"));
// Returns 765
/**
* isRoman - Confirm that string is a valid Roman numeral
* @param { string } value String to be tested
* @returns { boolean } true or false
*/
export function isRoman(value: string): true | Error {}
π΅ Example
console.log(roman.isRoman("MMMCCXXXIV"));
// Returns true
/**
* @param args Roman numerals to be added
* @returns { string } Final Roman numeral
*/
export function sum(
expected: "number" | "roman",
...args: string[]
): string | number | Error {}
π΅ Example
console.log(roman.sum("number", "X", "MXC"));
// Returns 1100
/**
* @param expected { string } Expected response type
* @param numerals { string[] } Roman numerals to subtract
* @returns { string | number }
*/
export function diff(expected: "number" | "roman", numerals: string[]) {}
π΅ Example
console.log(roman.diff("number", ["X", "MXC"]));
// Returns 1080
/**
* Get range of Roman numerals
* @param end { string | number } Value to stop at
* @param start { string | number } Value to start from
* @param intervals { string | number } Difference between values
*/
export function range(
end: string | number,
start: string | number = "I",
intervals: string | number = "I"
): string[] | Error {}
π΅ Examples
console.log(roman.range(7));
// Returns [ 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII' ]
console.log(roman.range("IX"));
// Returns [ 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX' ]
console.log(roman.range(12, 7));
// Returns [ 'VII', 'VIII', 'IX', 'X', 'XI', 'XII' ]
console.log(roman.range(12, "IX"));
// Returns [ 'IX', 'X', 'XI', 'XII' ]
console.log(roman.range(22, 3, 5));
// Returns [ 'III', 'VIII', 'XIII', 'XVIII' ]
Any statement in this repository that is not purely historical is considered a forward-looking statement. Forward-looking statements included in this repository are based on information available to GitHub as of the date they are made, and GitHub assumes no obligation to update any forward-looking statements. The forward-looking comments in the public feedback discussions do not represent a commitment, guarantee, obligation or promise to deliver any product or feature, or to deliver any product and feature by any particular date, and is intended to outline the general development plans. Customers should not rely on these public feedback discussions to make any purchasing decision.
If you found this project useful or you like what you see, then please consider giving it a β on Github and sharing it with your social media folks π.