为什么我的转换器不计算最后一位?

问题描述

该程序用于将罗马数字转换为十进制数字。该程序可以将字母转换为数字,但不能处理最后的罗马数字。我认为我的流程还可以,但输出不正确。有人可以帮我吗?

 COLUMN_NAME:"Client ID"

解决方法

您应在第二个循环结束后添加最后一个罗马数字的值。

作为替代方案,您可以将<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>的输入长度设置为长于value,并将最后一个输入项设置为n,这样就不需要为最后一个罗马字母做特殊情况数字。

请注意,您还应该处理无法识别的罗马数字:忽略它们或返回错误代码,例如负值0

对于-1,以空终止的C字符串并在那里计算长度也更简单。

这是修改后的版本:

roman_to_int