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
Adam would like to reduce the size of an image that he inserted into a document. He selects the image and chooses the Crop optio
Dmitrij [34]

Answer:

it allows users to trim the edges of the image,making the image smaller.

Explanation:

Cropping refers to removing unwanted parts of a graphic hence can facilitate to reducing the size

3 0
3 years ago
Read 2 more answers
Write a program in Python that reads in investment amount, annual interest rate, and number of years, and displays the future in
pickupchik [31]

Answer:

investmentAmount = float(input("enter the investment amount: "))

annualInterestRate = float(input("enter the Annual Interest Rate: "))

numYears = int(input("Enter NUmber of Years: "))

monthlyInterestRate = annualInterestRate/12

futureInvestmentValue = investmentAmount * (1 + monthlyInterestRate)*(numYears*12)

print("The Future Investment Value is: ")

print(futureInvestmentValue)

Explanation:

Using python programming language as required, we use the input function to prompt user for inputs for each of the variables.

There is a conversion from the variable annualInterestRate  to monthlyInterestRate before the formula for the futureInvestmentValue is applied

4 0
3 years ago
What is the answer please
N76 [4]
Ummmmmm......Where is the question?
4 0
3 years ago
Read 2 more answers
The communication channel used in IMC must rev: 12_06_2018_QC_ CDR-223 Multiple Choice match the traditional channel used in tha
Setler [38]

Answer:

connect the sender with the desired recipients.

Explanation:

Integrated Marketing Communication (IMC) is a process through which organizations create seamless branding and coordination of their marketing and communication objectives with its business goals and target audience or consumers. The communication tools used in IMC are both digital and traditional media such as billboards, search engine optimization, magazines, television, blog, radio, webinars etc.

The communication channel used in IMC must connect the sender with the desired recipients.

The receiver is any individual who is able to read, hear or see and process the message being sent or communicated in the IMC communication process. Any interference the IMC communication process is known as noise.

An organization can analyze and measure the effectiveness of the IMC communication process by considering market share, sales, and customer loyalty.

5 0
3 years ago
Any please answer this How much resistance is required to gen-erate 50 mA of current from a 5 volt bat-tery?
nasty-shy [4]

Answer:

Calculating Currents: Current in a Truck Battery and a Handheld Calculator ... (b) How long does it take 1.00 C of charge to flow through a handheld calculator if a 0.300-mA current is ...

7 0
2 years ago
Other questions:
  • During the past decade ocean levels have been rising faster than in the past, an average of approximately 3.1 millimeters per ye
    14·1 answer
  • What is batch processing?
    12·1 answer
  • Meaning of page break​
    8·1 answer
  • Create a class 'ProblemSolution' with following characteristics A public method 'solution' without parameters and return type is
    14·1 answer
  • Shape is very prominent in the image of the telephone other elements are ( Color, Space, or Line) and (Form, Space, or Texture)
    15·2 answers
  • Jim is writing a program to calculate the wages of workers in a teddy bear factory.
    7·1 answer
  • Select the correct answer.
    10·1 answer
  • How are switches indirectly involved in ARP poisoning?
    6·1 answer
  • The computer stores currently used programs and data in ________.
    9·2 answers
  • How does your ability to correctly count change affect the impression the customer has of you?
    8·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!