Advertisement
mauricioribeiro

Java solution for Roman Numerals exercise

Sep 1st, 2015
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.00 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. public class Main {
  4.  
  5.     public static void main(String[] args) {
  6.         // TODO Auto-generated method stub
  7.         Scanner user = new Scanner( System.in );
  8.         String input, output = "";
  9.         Integer number,remainder;
  10.         List<String> romanStr = Arrays.asList("M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I");
  11.         List<Integer> romanInt = Arrays.asList(1000,900,500,140,100,90,50,40,10,9,5,4,1);
  12.        
  13.         System.out.println("Digite um número inteiro positivo:");
  14.         input  = user.next();
  15.        
  16.         try{
  17.             number = Integer.parseInt(input);
  18.             if(number > 0){
  19.                 remainder = number;
  20.                 for(int i = 0; i < romanStr.size(); i++){
  21.                     while(remainder >= romanInt.get(i)){
  22.                         remainder -= romanInt.get(i);
  23.                         output += romanStr.get(i);
  24.                     }
  25.                 }
  26.                 System.out.println("Número romano: "+output);
  27.             } else {
  28.                 System.out.println("O valor deve ser positivo!");
  29.             }
  30.         } catch(Exception e){
  31.             System.out.println("Valor inválido! A entrada deve ser um número inteiro.");
  32.         }
  33.     }
  34.  
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement