How to resolve the algorithm Roman numerals/Encode step by step in the HicEst programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Roman numerals/Encode step by step in the HicEst programming language

Table of Contents

Problem Statement

Create a function taking a positive integer as its parameter and returning a string containing the Roman numeral representation of that integer. Modern Roman numerals are written by expressing each digit separately, starting with the left most digit and skipping any digit with a value of zero.

In Roman numerals:

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Roman numerals/Encode step by step in the HicEst programming language

Source code in the hicest programming language

CHARACTER Roman*20

CALL RomanNumeral(1990, Roman) ! MCMXC
CALL RomanNumeral(2008, Roman) ! MMVIII
CALL RomanNumeral(1666, Roman) ! MDCLXVI

END

SUBROUTINE RomanNumeral( arabic, roman)
  CHARACTER roman
  DIMENSION ddec(13)
  DATA      ddec/1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1/

  roman = ' '
  todo = arabic
  DO d = 1, 13
    DO rep = 1, todo / ddec(d)
      roman = TRIM(roman) // TRIM(CHAR(d, 13, "M  CM D  CD C  XC L  XL X  OX V  IV I  "))
      todo = todo - ddec(d)
    ENDDO
  ENDDO
END

  

You may also check:How to resolve the algorithm Metered concurrency step by step in the FreeBASIC programming language
You may also check:How to resolve the algorithm Leap year step by step in the MIPS Assembly programming language
You may also check:How to resolve the algorithm Synchronous concurrency step by step in the Raven programming language
You may also check:How to resolve the algorithm Averages/Arithmetic mean step by step in the AmigaE programming language
You may also check:How to resolve the algorithm Pangram checker step by step in the Brat programming language