La Web del Programador: Comunidad de Programadores
https://www.lawebdelprogramador.com/foros/Visual-Basic.NET/844102-convertir-de-numeros-decimales-a-romanos-es-urgent.html

convertir de numeros decimales a romanos es urgent

convertir de numeros decimales a romanos es urgent

Publicado por brigitte (1 intervención) el 25/07/2007 23:29:17
porfavor necesito el codigo fuente para convertir de numeros decimales a numeros romanos gracias...

RE:convertir de numeros decimales a romanos es urg

Publicado por OliBeer (391 intervenciones) el 26/07/2007 16:45:38
Hola!!! mira están estos dos códigos, lamentablemente uno es en JavaScript y el otro en Delphi, pero no será complicado migrarlo a VB.

**************JavaScript

<html>
<body>

<!----------------COMEÇA AQUI------------------>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
var ones_numerals = new Array();
ones_numerals[0] = "";
ones_numerals[1] = "I";
ones_numerals[2] = "II";
ones_numerals[3] = "III";
ones_numerals[4] = "IV";
ones_numerals[5] = "V";
ones_numerals[6] = "VI";
ones_numerals[7] = "VII";
ones_numerals[8] = "VIII";
ones_numerals[9] = "IX";
var tens_numerals = new Array();
tens_numerals[0] = "";
tens_numerals[1] = "X";
tens_numerals[2] = "XX";
tens_numerals[3] = "XXX";
tens_numerals[4] = "XL";
tens_numerals[5] = "L";
tens_numerals[6] = "LX";
tens_numerals[7] = "LXX";
tens_numerals[8] = "LXXX";
tens_numerals[9] = "XC";
var hundreds_numerals = new Array();
hundreds_numerals[0] = "";
hundreds_numerals[1] = "C";
hundreds_numerals[2] = "CC";
hundreds_numerals[3] = "CCC";
hundreds_numerals[4] = "CD";
hundreds_numerals[5] = "D";
hundreds_numerals[6] = "DC";
hundreds_numerals[7] = "DCC";
hundreds_numerals[8] = "DCCC";
hundreds_numerals[9] = "CM";
var thousands_numerals = new Array();
thousands_numerals[0] = "";
thousands_numerals[1] = "M";
thousands_numerals[2] = "MM";
thousands_numerals[3] = "MMM";
function checkNumber(number)
{
if((parseInt(number) < 4000) && (parseInt(number) > 0))
{
var numeral = createNumeral(number);
if(numeral.indexOf('undefined') == -1)
{
window.document.form.numeral.value = numeral;
}
}else{
alert('you must enter a valid number');
}
}
function createNumeral(num)
{
var new_num = num
var thousands = Math.floor(new_num / 1000);
new_num -= thousands * 1000;
var hundreds = Math.floor(new_num / 100);
new_num -= hundreds * 100;
var tens = Math.floor(new_num / 10);
new_num -= tens * 10;
var ones = Math.floor(new_num / 1);
if((thousands == NaN)||(hundreds == NaN)||(tens == NaN)||(ones == NaN))
{
alert('you must enter a valid number');
}else{
var array = new Array(thousands,hundreds,tens,ones);
return makeNumeral(array);
}
}
function makeNumeral(place_values)
{
var numeral = "";
numeral += thousands_numerals[place_values[0]];
numeral += hundreds_numerals[place_values[1]];
numeral += tens_numerals[place_values[2]];
numeral += ones_numerals[place_values[3]];
return numeral;
}
// End -->
</script>

</HEAD>


<BODY>

<div align="center">
<form name="form"><font face=verdana size=1 color=black>
Coloque um nº de (1-3999) Aqui: </font><input type="text" size="5" name="number"><p>
<input type="button" value="converter" onclick="checkNumber(window.document.form.number.value)"><p>
<font face=verdana size=1 color=black>Resultado aqui:</font> <input type="text" size="20" name="numeral"><br>
</form>
</div>

<table width="40%" border="1" cellspacing="1" cellpadding="5" align="center" bordercolor=black>
<tr>
<td>M = 1000</td>
<td>D = 500</td>
<td>C = 100</td>
<td>L = 50</td>
</tr>
<tr>
<td>X = 10</td>
<td>V = 5</td>
<td>I = 1</td>
<td> </td>
</tr>
</table>
<!-----------------TERMINA AQUI---------------------->

</body>
</html>



*************Delphi

function IntToRoman(Value: LongInt): String;
const
Arabics: Array[1..13] of Integer = (1, 4, 5, 9, 10,
40, 50, 90, 100, 400, 500, 900, 1000);
Romans: Array[1..13] of String = ('I', 'IV', 'V',
'IX', 'X', 'XL', 'L', 'XC', 'C', 'CD', 'D', 'CM', 'M');
var
i: Integer;
begin
for i := 13 downto 1 do
while (Value >= Arabics[i]) do
begin
Value := Value - Arabics[i];
Result := Result + Romans[i];
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
inteiro: integer;
begin
inteiro := 10;

ShowMessage(IntToRoman(inteiro));
end;

conversion de numeros romanos a decimal y ovicever

Publicado por maria (1 intervención) el 14/08/2007 17:07:44
hola necesito urgente el codigo en java de conversion de numeros romanos a decimal y de decimal a romanos si alguien me puede ayudar enviarmelo a mi correo es urgente

RE:convertir de numeros decimales a romanos es urg

Publicado por Luis (1 intervención) el 16/10/2010 03:14:01
y en visual basic.net como seria