Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

//** There are error handling conditions. Can you write a program that handles the errors and do not give output if the Roman number is

//** There are error handling conditions. Can you write a program that handles the errors and do not give output if the Roman number is wrongly entered like 950=CML but not LM

There are conditions of auxiliary and basic .Can you check this and write code**//

Write a program to convert roman numerals into their arabic equivalent.

INPUT REQUIREMENTS

Read one or more roman numerals from standard input. Process one line at a time. Each input line contains only one roman numeral, starting in column one. Assume the characters are all upper case with no embedded blanks.

OUTPUT REQUIREMENTS

The arabic equivalent of each input roman numeral is displayed on standard output, starting in column one.

FUNCTIONAL REQUIREMENTS

Here are the arabic equivalents for roman symbols:

The "basic" roman symbols The "auxiliary" roman symbols

I X C M V L D

1 10 100 1000 5 50 500

Convert the roman numeral to arabic processing the symbols from left to right according to the following rules:

1. A symbol following one of greater or equal value adds to its value. (E.g., XII = 12) 2. A symbol preceding one of greater value subtracts its value.(E.g., IV = 4; XL = 40)

ERROR HANDLING REQUIREMENTS

In each of the error conditions below, display the given message and skip the numeral and continue processing the next line.

"Invalid character in input. Valid characters are I,V,X,L,C,D,M."

Only the listed characters are valid.

"Invalid numeral: can't subtract auxiliary symbol."

It is not permitted to subtract an "auxiliary" symbol. (CML, not LM = 950; XLV not VL, = 45).

"Invalid numeral: two consecutive subtractions."

Can't do two subtractions in a row, thus LIVX is illegal.

"Invalid numeral: additions don't decrease."

Additions must decrease, as you go from left to right. Thus, each symbol added must have a value equal or less than the last symbol which was added. Thus, LIIX is wrong, cause we added L, added I, subtracted I, then try to add X.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Systems Design Implementation And Management

Authors: Peter Robb,Carlos Coronel

5th Edition

061906269X, 9780619062699

More Books

Students also viewed these Databases questions

Question

Name the following compounds: a) c) H C CH3 b) d)

Answered: 1 week ago

Question

1. Describe the functions of money.

Answered: 1 week ago

Question

1. What are the major sources of stress in your life?

Answered: 1 week ago

Question

What tools might be helpful?

Answered: 1 week ago