From 3e9c663810b730a745d26522fa3dbdd5798d1aa6 Mon Sep 17 00:00:00 2001 From: Rishi Prakash Date: Wed, 2 May 2018 13:46:19 +0530 Subject: [PATCH] Add files via upload --- Conversions/IntToRoman.java | 101 ++++++++++++++++++++++++++++++++++++ Conversions/RomanToInt.java | 51 ++++++++++++++++++ 2 files changed, 152 insertions(+) create mode 100644 Conversions/IntToRoman.java create mode 100644 Conversions/RomanToInt.java diff --git a/Conversions/IntToRoman.java b/Conversions/IntToRoman.java new file mode 100644 index 000000000000..0bc4d7acfe9c --- /dev/null +++ b/Conversions/IntToRoman.java @@ -0,0 +1,101 @@ +public class IntToRoman { + + int value(int toPret){ + if(toPret>=1000){ + return 1000; + }else if(1000>toPret && toPret>=900){ + return 900; + }else if(900>toPret && toPret>=500){ + return 500; + }else if(500>toPret && toPret>=400){ + return 400; + }else if(400>toPret && toPret>=100){ + return 100; + }else if(100>toPret && toPret>=90){ + return 90; + }else if(90>toPret && toPret>=50){ + return 50; + }else if(50>toPret && toPret>=40){ + return 40; + }else if(40>toPret && toPret>=10){ + return 10; + }else if(10>toPret && toPret>=9){ + return 9; + }else if(9>toPret && toPret>=5){ + return 5; + }else if(5>toPret && toPret>=4){ + return 4; + }else if(4>toPret && toPret>=1){ + return 1; + }else{ + return 0; + } + } + + String valStr(int a){ + if(a==1000){ + return "M"; + } + if(a==900){ + return "CM"; + } + if(a==500){ + return "D"; + } + if(a==400){ + return "CD"; + } + if(a==100){ + return "C"; + } + if(a==90){ + return "XC"; + } + if(a==50){ + return "L"; + } + if(a==40){ + return "XL"; + } + if(a==10){ + return "X"; + } + if(a==9){ + return "IX"; + } + if(a==5){ + return "V"; + } + if(a==4){ + return "IV"; + } + if(a==1){ + return "I"; + } + + return ""; + } + + StringBuffer str = new StringBuffer(); + public String intToRoman(int a) { + + int toRepeat = value(a); + String corString = valStr(toRepeat); + for(int i =0;i<(a/toRepeat);i++){ + str.append(corString); + } + if((a%toRepeat)>0) + intToRoman(a%toRepeat); + return str.toString(); + + } + + + public static void main(String[] s){ + + int intVal = 11128; + System.out.println(new IntToRoman().intToRoman(intVal)); + + } + +} \ No newline at end of file diff --git a/Conversions/RomanToInt.java b/Conversions/RomanToInt.java new file mode 100644 index 000000000000..0927edf10a23 --- /dev/null +++ b/Conversions/RomanToInt.java @@ -0,0 +1,51 @@ +public class RomanToInt { + int value(String a){ + if(a.equals("I")){ + return 1; + }else if(a.equals("V")){ + return 5; + }else + if(a.equals("X")){ + return 10; + }else + if(a.equals("L")){ + return 50; + }else if(a.equals("C")){ + return 100; + }else + if(a.equals("D")){ + return 500; + }else + if(a.equals("M")){ + return 1000; + }else{ + return 0; + } + } + public int romanToInt(String a1) { + int total = 0; + for(int i=0;i=value(s2)){ + total+=value(s1); + }else{ + total = total-value(s1)+value(s2); + i++; + } + }else{ + total+=value(s1); + } + } + return total; + } + + public static void main(String[] s){ + + String romanVal = "XIV"; + System.out.println(new RomanToInt().romanToInt(romanVal)); + + } + + } \ No newline at end of file