您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

JAVA程序将罗马数字转换为整数数字

2025/5/31 3:01:15发布21次查看
罗马数字 - 基于古罗马系统,使用符号来表示数字。这些数字称为罗马数字。符号为 i、v、x、l、c、d 和 m,分别代表 1、5、10、50、100、500 和 1,000。
整数 - 整数就是由正值、负值和零值组成的整数。分数不是整数。
这里我们根据整数值设置符号值。每当输入罗马数字作为输入时,我们都会将其划分为单位,然后计算适当的罗马数字。
i - 1ii – 2iii – 3iv – 4v – 5vi – 6...x – 10xi – 11..xv - 15
在本文中,我们将了解如何在 java 中将罗马数字转换为整数。
向您展示一些实例 -实例1input roman number is xiv.converting it to integer = 14.
实例2input roman number is ccxxxiv.converting it to integer = 234.
实例3input roman number is mccxxxi.converting it to integer = 1231.
算法step-1 - 通过静态输入或用户输入以字符串形式获取输入罗马数字。
step-2 - 在一个用户定义的方法中,我们声明了一些条件,其中存在具有适当整数值的罗马数字。
step-3 - 在另一个用户定义的方法中,通过使用给定字符串的索引值,我们计算罗马数字值。
step-4 - 获取整数后,我们将其打印为输出。
多种方法我们通过不同的方式提供了解决方案。
通过具有静态输入值的用户定义方法。
通过用户定义的方法和用户输入值。
让我们一一看看该程序及其输出。
方法 1:使用具有静态输入值的用户定义方法在这种方法中,我们通过静态输入法声明一个罗马输入数字,并将该数字作为参数传递到用户定义的方法中,然后在方法内部使用算法将罗马数字转换为整数。
示例import java.util.*;import java.io.*;import java.lang.math;public class main { public static void main(string args[]) { main obj = new main(); string inputroman= lxvii; system.out.println(the integer value of given roman number is: +obj.romantoint(inputroman)); } int numvalue(char rom) { if (rom == 'i') return 1; if (rom == 'v') return 5; if (rom == 'x') return 10; if (rom == 'l') return 50; if (rom == 'c') return 100; if (rom == 'd') return 500; if (rom == 'm') return 1000; return -1; } int romantoint(string str) { int sum = 0; for (int i=0; i<str.length(); i++) { int s1 = numvalue(str.charat(i)); if (i+1 <str.length()) { int s2 = numvalue(str.charat(i+1)); if (s1 >= s2) { sum = sum + s1; } else{ sum = sum - s1; } } else { sum = sum + s1; } } return sum; }}
输出the integer value of given roman number is: 67
方法 2:使用用户输入值在这种方法中,我们通过用户输入方法声明一个罗马输入数字,并将该数字作为参数传递到用户定义的方法中,然后在方法内部使用算法将罗马数字转换为整数。示例import java.util.*;import java.io.*;import java.lang.math;public class main { public static void main(string args[]) { main obj = new main(); scanner sc = new scanner(system.in); system.out.print(enter a roman number in capital letters: ); string inputroman= sc.nextline(); system.out.println(the integer value of given roman number is:+obj.romantoint(inputroman)); } int numvalue(char rom){ if (rom == 'i') return 1; if (rom == 'v') return 5; if (rom == 'x') return 10; if (rom == 'l') return 50; if (rom == 'c') return 100; if (rom == 'd') return 500; if (rom == 'm') return 1000; return -1; } int romantoint(string str) { int sum = 0; for (int i=0; i<str.length(); i++) { int s1 = numvalue(str.charat(i)); if (i+1 <str.length()) { int s2 = numvalue(str.charat(i+1)); if (s1 >= s2) { sum = sum + s1; } else { sum = sum - s1; } } else { sum = sum + s1; } } return sum; } }
输出enter a roman number in capital letters: vthe integer value of given roman number is: 5
在本文中,我们探讨了如何使用不同的方法在 java 中将罗马数字转换为整数。
以上就是java程序将罗马数字转换为整数数字的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product