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
pantera1 [17]
3 years ago
14

Write a program that converts a number entered in Roman numerals to decimal. your program should consist of a class, say, Roman.

An object of type Roman should do the following:a. Store the number as a Roman numeral.b. convert and store the number into decimal.c. print the number as a Roman numeral or decimal number as requested by the user.the decimal number values of the Roman numerals are:M 1000D 500C 100L 50X 10V 5I 1d. Your class must contain the method romanToDecimal to convert a Roman numeral into its equivalent decimal numbere. Test your program using the following Roman numerals: CXIV, CCCLIX, and MDCLXVI.
Computers and Technology
1 answer:
arlik [135]3 years ago
3 0

Answer:

The code is given below in Java with appropriate comments

Explanation:

import java.util.*;

public class RomantoDecimal {

    public static void main(String[] args)

    {

         Scanner SC = new Scanner(System.in);

         RomantoDecimal r = new RomantoDecimal();

         System.out.println("Enter a Roman number :");

         // INPUT A ROMAN NUMBER

         String rNum = SC.next();

         // CALL convertToDecimal FOR CONVERSION OF ROMAN TO DECIMAL

         r.convertToDecimal(rNum);

    }

    // M=1000, D=500, C=100, L=50, X=10, V=5, I=1

    public void convertToDecimal(String roamNo)

    {

         int number = 0;

         // TEACK EACH DIGIT IN THE GIVEN NUMBER IN REVERSE ORDER

         for (int i = roamNo.length() - 1; i >= 0; i--)

         {

             // FIND OUT WHETHER IT IS 'M' OR NOT

             if (roamNo.charAt(i) == 'M')

             {

                  if (i != 0)

                  { // CHECK WHETHER THERE IS C BEFORE M

                       if (roamNo.charAt(i - 1) == 'C')

                       {

                            number = number + 900;

                            i--;

                            continue;

                       }

                  }

                  number = number + 1000;

             }

             // FIND OUT WHETHER IT IS 'D' OR NOT

             else if (roamNo.charAt(i) == 'D')

             {

                  if (i != 0)

                  {

                  // CHECK WHETHER THERE IS C BEFORE D

                       if (roamNo.charAt(i - 1) == 'C')

                       {

                            number = number + 400;

                            i--;

                            continue;

                       }

                 }

                  number = number + 500;

             }

            // FIND OUT WHETHER IT IS 'C' OR NOT

             else if (roamNo.charAt(i) == 'C')

             {

                  if (i != 0)

                  {

                       if (roamNo.charAt(i - 1) == 'X')

                       {

                            number = number + 90;

                            i--;

                            continue;

                      }

                  }

                  number = number + 100;

             }

             else if (roamNo.charAt(i) == 'L')

             {

                  if (i != 0)

                  {

                       if (roamNo.charAt(i) == 'X')

                       {

                            number = number + 40;

                            i--;

                            continue;

                       }

                  }

                  number = number + 50;

             }

             // FIND OUT WHETHER IT IS 'X' OR NOT

             else if (roamNo.charAt(i) == 'X')

             {

                  if (i != 0)

                  {

                       if (roamNo.charAt(i - 1) == 'I')

                       {

                            number = number + 9;

                            i--;

                            continue;

                       }

                  }

                  number = number + 10;

             }

             // FIND OUT WHETHER IT IS 'V' OR NOT

             else if (roamNo.charAt(i) == 'V')

             {

                  if (i != 0)

                  {

                       if (roamNo.charAt(i - 1) == 'I')

                       {

                            number = number + 4;

                            i--;

                            continue;

                       }

                  }

                  number = number + 5;

             }

            else // FIND OUT WHETHER IT IS 'I' OR NOT

             {

                  number = number + 1;

             }

         }// end for loop

         System.out.println("Roman number: " + roamNo + "\nIts Decimal Equivalent: " + number);

    }

}

You might be interested in
Among the many DTP software tools available today, which is regarded as the industry standard for DTP?
nexus9112 [7]

Answer:

bland1 InDesign    Blank2 typesetting

Explanation:

4 0
3 years ago
Read 2 more answers
True or false? Resistors regulate and limit electrical current. A. True B. False
Vikki [24]
Hello! I believe the answer for this is "True"!
3 0
3 years ago
Read 2 more answers
Complete the procedure for adding a contact by selecting the correct term from each drop-down menu.
VARVARA [1.3K]

Answer:

1 new contact 2 save and close

6 0
3 years ago
50 POINTS<br><br>Question linked in file below.
Ratling [72]

{{5,10,15,20},{25,30,35,40}} is answer where zero is not found.

<u>Explanation:</u>

This program finds zero in giving as arrays of value as a parameter. The program has two loop. One is a row of the array and the other is column loop for each row o an array. For loop is created with a  variable namer row and the loop ends with a length of the array of each row.

In side row for loop col loop is created and loop ends with each row-column length of cells. If data in each cell i.e (row, col)  calue is zero it returns true and the loop is terminated immediately.

In case if the value of the cell doesn’t found zero it never terminates the loop and continuous loop and returns a false value. Find Zero functions accept the two-dimensional array and check whether cell value is zero. If it is zero found return true otherwise it returns false.

7 0
3 years ago
Let's say you wanted to make an American Football game. What is an example of a legal issue you'd have to watch out for?
IgorC [24]

Answer:

Personal injury.

Explanation:

With a bunch of people running around on a field with a goal of <em>slamming into each other</em>, bodily injury becomes a relevant liability.

7 0
1 year ago
Other questions:
  • Create a text file that contains your expenses for last month in the following categories: • Rent • Gas • Food • Clothing • Car
    13·1 answer
  • In doing a load of clothes, a clothes drier uses 18 A of current at 240 V for 59 min. A personal computer, in contrast, uses 3.0
    7·1 answer
  • What type of network does not have centralized control, such as one in a small office or home office?
    5·1 answer
  • Functions that are built-in into PHP to perform some standard operations.
    15·1 answer
  • Which option is most likely used to create many-to-many relationships in Access?
    8·1 answer
  • Why should you not perform any personal grooming task while driving?
    5·2 answers
  • The entirety of a packet at one layer becoming the payload section at another layer is known as
    8·2 answers
  • Place the steps in order to link and place text into the document outline, effectively creating a master document.
    8·1 answer
  • If you wanted to create a line of code that would add ten to the user’s current score, which code should you use?
    12·2 answers
  • Halp me vanajsudhrbfhjrjfjfjf ​
    9·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!