1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Varvara68 [4.7K]
3 years ago
7

Define a romanNumberToInt function that converts a RomanNumber value, which is a list of Roman digits, into an integer. Hints: -

Assume the Roman number representation is valid. - Use recursion to sum up number in romanNumber because it is a list. - Use pattern guards to manage case when digits come in reverse order, e.g. IX, IV.
Computers and Technology
1 answer:
USPshnik [31]3 years ago
6 0

Answer:

Check the explanation

Explanation:

type RomanDigit = int

type RomanNumeral = RomanDigit list

type RomanDigit = I | V | X | L | C | D | M

type RomanNumeral = RomanNumeral of RomanDigit list

/// Converting a single RomanDigits to an integers here

let digitToInt =

function

| I -> 1

| V -> 5

| X -> 10

| L -> 50

| C -> 100

| D -> 500

| M -> 1000

// testing here

I |> digitToInt

V |> digitToInt

M |> digitToInt

let rec digitsToInt = function

 

// empty is notified by using 0

| [] -> 0

// special case when a smaller comes before larger

// convert both digits and add the difference to the sum

// Example: "IV" and "CM"

| smaller::larger::ns when smaller < larger -> (digitToInt larger - digitToInt smaller) + digitsToInt ns

// otherwise convert the digit and add to the sum

| digit::ns -> digitToInt digit + digitsToInt ns

// tests

[I;I;I;I] |> digitsToInt

[I;V] |> digitsToInt

[V;I] |> digitsToInt

[I;X] |> digitsToInt

[M;C;M;L;X;X;I;X] |> digitsToInt // that is 1979

[M;C;M;X;L;I;V] |> digitsToInt // that is 1944

/// converts a RomanNumeral to an integer

let toInt (RomanNumeral digits) = digitsToInt digits

// test

let x = RomanNumeral [I;I;I;I]

x |> toInt

let x = RomanNumeral [M;C;M;L;X;X;I;X]

x |> toInt

You might be interested in
A key step in the ____ approach to incident response is to discover the identify of the intruder while documenting his or her ac
muminat

Answer:d)apprehend and prosecute

Explanation: A intruder is a person who tries to access the system or damage it in an unauthorized manner. The person who is found with any intruding activity should be discovered.

Apprehending means of getting aware and prosecute defines the accusing of any person committing a crime .These activities define the nature of the intruder whose trying to commit the crime and should be detected while he  is pursuing the activity.Thus , the correct option is option(d).

7 0
3 years ago
Windows Hello supports multiple biometric authentication methods, including facial recognition. What is the failsafe method to a
Orlov [11]

Answer:

The failsafe method when facial recognition method is unavailable is the Personal Identification Number (PIN) method.

Explanation:

The Personal Identification Number (PIN) option is available for setup for cases when other biometric authentication methods fail due to several reasons.

6 0
3 years ago
How does job growth in digital media compare to job growth in print-based media companies?
tatuchka [14]

Answer:

A. Job growth in digital media has been powerful, while print-based media companies are cutting jobs at record levels.

Explanation:

Digital media is both inexpensive and instant. Based on the art and design, it might be less expensive than print media. Campaigns and content can be created, produced, and maintained far more quickly than printed media. Digital media is dynamic and may create user data. Digital media has had a significant influence on how we obtain our daily news. As it is more easy to read, most individuals choose to acquire their news via phone applications. With the increased usage of digital media as a news source, it is worth considering if print media will become outdated.

Print media has been established for decades, and it evolved as a dominant source of news. In the last decade, an increasing number of print media businesses have expanded out from regular print and begun providing news on digital services. Young millennials, in instance, appear to invest additional time online than reading printed publications.

8 0
2 years ago
What is hardware?
Dennis_Churaev [7]
The physical devices that make up a computer system
7 0
3 years ago
Read 2 more answers
Dr. Bloom is writing a test for a history class and wants to ask a question that will have a Boolean value for the answer. Which
Valentin [98]

Answer:

Example

If [variable] = true?

Print(True)

5 0
2 years ago
Other questions:
  • What i have to care about transmitting data packet from one controller to other controller?
    8·1 answer
  • Which of the following takes place during the research phase
    7·1 answer
  • Which of the following function declarations correctly expect an array as the first argument?
    12·1 answer
  • Why are online payment services necessary?
    10·2 answers
  • Assume that you have an ArrayList variable named a containing 4 elements, and an object named element that is the correct type t
    9·1 answer
  • What is the output of the following program?
    11·1 answer
  • Which of the following browsers was introduced with windows 10?
    10·1 answer
  • Answer This One Question Right For Brainliest
    10·1 answer
  • A form of segmentation that is based on user usage rate, user status, purchase occasion, and benefits sought is _________.
    13·1 answer
  • The _________________ creates international guiding principles for computer forensic examiners.
    13·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!