Advertisement
gdog2u

RomanNumeralConverter

Mar 13th, 2014
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.01 KB | None | 0 0
  1. public static void main(String[] args) {
  2.        
  3.         System.out.println("Please enter an equation like the following:\nOperand1 operator Operand2");
  4.         Scanner in = new Scanner(System.in);
  5.         String ara = in.nextLine();
  6.         int fin;
  7.         String[] tokens = ara.split(" ");
  8.        
  9.         switch(tokens[1]){
  10.         case "+":
  11.             fin = Integer.parseInt(tokens[0]) + Integer.parseInt(tokens[2]);
  12.             System.out.println(mar13.RomanCalc(Integer.parseInt(tokens[0])) + " + " + mar13.RomanCalc(Integer.parseInt(tokens[2])) + " = " + mar13.RomanCalc(fin));
  13.             break;
  14.         case "-":
  15.             fin = Integer.parseInt(tokens[0]) - Integer.parseInt(tokens[2]);
  16.             System.out.println(mar13.RomanCalc(Integer.parseInt(tokens[0])) + " - " + mar13.RomanCalc(Integer.parseInt(tokens[2])) + " = " + mar13.RomanCalc(fin));
  17.             break;
  18.         case "*":
  19.             fin = Integer.parseInt(tokens[0]) * Integer.parseInt(tokens[2]);
  20.             System.out.println(mar13.RomanCalc(Integer.parseInt(tokens[0])) + " * " + mar13.RomanCalc(Integer.parseInt(tokens[2])) + " = " + mar13.RomanCalc(fin));
  21.             break;
  22.         case "/":
  23.             fin = Integer.parseInt(tokens[0]) / Integer.parseInt(tokens[2]);
  24.             System.out.println(mar13.RomanCalc(Integer.parseInt(tokens[0])) + " / " + mar13.RomanCalc(Integer.parseInt(tokens[2])) + " = " + mar13.RomanCalc(fin));
  25.             break;
  26.         }
  27.         in.close();
  28.        
  29.     }
  30.  
  31. public static String RomanCalc(int ara) {
  32.        
  33.         String[] ONES = {"I","II","III","IV","V","VI","VII","VIII","IX"};
  34.         String[] TENS = {"X","XX","XXX","XL","L","LX","LXX","LXXX","XC"};
  35.         String[] HUNDREDS = {"C","CC","CCC","CD","D","DC","DCC","DCCC","DM"};
  36.         String[] THOUSANDS = {"M","MM","MMM"};
  37.        
  38.         int ones = ara%10;
  39.         ara = (ara-ones)/10;
  40.         int tens = ara%10;
  41.         ara = (ara-tens)/10;
  42.         int hundreds = ara%10;
  43.         ara = (ara - hundreds)/10;
  44.         int thousands = ara%10;
  45.        
  46.         String fin="";
  47.         if(thousands >= 1){
  48.             fin += THOUSANDS[thousands - 1];
  49.         }
  50.         if(hundreds >= 1){
  51.             fin += HUNDREDS[hundreds - 1];
  52.         }
  53.         if(tens >=1){
  54.             fin += TENS[tens - 1];
  55.         }
  56.         if(ones >= 1){
  57.             fin+= ONES[ones - 1];
  58.         }
  59.         return fin;
  60.  
  61.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement