BIS_fnc_romanNumeral

From Bohemia Interactive Community
Revision as of 23:44, 12 July 2022 by Lou Montana (talk | contribs) (Text replacement - "<code> *([^<|{]*) *<\/code>" to "<sqf>$1</sqf>")
Jump to navigation Jump to search
Hover & click on the images for description

Description

Description:
Convert integer to roman numeral (e.g. 42 becomes "XLII").
Execution:
call
Groups:
StringsMath

Syntax

Syntax:
integer call BIS_fnc_romanNumeral
Parameters:
integer: Number, String, Code or Config, same as BIS_fnc_parseNumber (used in this function) - any integer between 1 and 3999
Return Value:
String - Roman number

Examples

Example 1:
1 call BIS_fnc_romanNumeral; // returns "I"
Example 2:
3999 call BIS_fnc_romanNumeral; // returns "MMMCMXCIX"

Additional Information

See also:
BIS_fnc_ordinalNumber BIS_fnc_phoneticalWord

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note


Posted on October 1, 2019 - 01:46 (UTC)
Lou Montana
A Roman numeral is read like this:
Numeral I V X L C D M
Value 1 5 10 50 100 500 1000
  • It is read from left to right from the biggest numeral to the lowest*, adding up:
    *: not entirely true, see subtractions below
    • DCLVII = DCLVII = 500 + 100 + 50 + 5 + 1 + 1 = 657
  • A subtraction is done by writing one smaller numeral before a big one:
    • 9 could be written VIIII, or IX = 1 and 10 = 10 - 1 = 9 / but IIX for 8 doesn't exist, only VIII
  • The same numeral can be put together multiple times, but usually (there is no standard, but the shorter version is usually preferred) up to the point where it can be subtracted from the bigger numeral above the used one (subtraction still done with only one numeral):
    • IIII = IV, CCCC = CD

Now let's see if you can translate this one: MCMLXXXV. Tip: where it all started ;-) MCMLXXXII for the purists!
To learn more: Roman numerals on wikipedia