En la siguiente página se hace uso del switch en diferentes casos para transformar los números ingresados en letras y devolverlos como un texto legible. Se utilizan casos especiales para números como el 11 o 12 donde se verifica el número anterior al procesado y en caso de detectar un caso especial, cambia el resultado que brinda.
Código:
<html>
<head>
<title>PÁGINA TRADUCIR NÚMEROS</title>
</head>
<body bgcolor="lightgreen">
<center><b><h1>PÁGINA PASAR NÚMEROS A LETRAS</h1>
Ingrese Número:
<input type="text" name="numero" id="numero"><p>
Letras:
<input type="text" name="letras" id="letras"><p>
<input type="button" value="Procesar" Onclick="Procesar()">
</b></center>
</body>
<script>
function Procesar()
{
var v_numero = document.getElementById("numero").value;
n = v_numero.length;
k = 1;
res = "";
for(i=n-1;i>=0;i--)
{
c = v_numero.charAt(i);
if(k==1)
{
switch(c)
{
case "1":
res = "uno";
break;
case "2":
res = "dos";
break;
case "3":
res = "tres";
break;
case "4":
res = "cuatro";
break;
case "5":
res = "cinco";
break;
case "6":
res = "seis";
break;
case "7":
res = "siete";
break;
case "8":
res = "ocho";
break;
case "9":
res = "nueve";
break;
}
}
if(k == 2)
{
switch(c)
{
case "1":
switch(res)
{
case "":
res = "diez";
break;
case "uno":
res = "once";
break;
case "dos":
res = "doce";
break;
case "tres":
res = "trece";
break;
case "cuatro":
res = "catorce";
break;
case "cinco":
res = "quince";
break;
default:
res = "dieci" + res;
break;
}
break;
case "2":
switch(res)
{
case "":
res = "veinte";
break;
default:
res = "veinti"+res;
break;
}
break;
case "3":
switch(res)
{
case "":
res = "treinta";
break;
default:
res = "treinta y "+res;
break;
}
break;
case "4":
switch(res)
{
case "":
res = "cuarenta";
break;
default:
res = "cuarenta y "+res;
break;
}
break;
case "5":
switch(res)
{
case "":
res = "cincuenta";
break;
default:
res = "cincuenta y "+res;
break;
}
break;
case "6":
switch(res)
{
case "":
res = "sesenta";
break;
default:
res = "sesenta y "+res;
break;
}
break;
case "7":
switch(res)
{
case "":
res = "setenta";
break;
default:
res = "setenta y "+res;
break;
}
break;
case "8":
switch(res)
{
case "":
res = "ochenta";
break;
default:
res = "ochenta y "+res;
break;
}
break;
case "9":
switch(res)
{
case "":
res = "noventa";
break;
default:
res = "noventa y "+res;
break;
}
break;
}
}
if(k == 3)
{
switch(c)
{
case "1":
switch(res)
{
case "":
res = "cien";
break;
default:
res = "ciento " + res;
break;
}
break;
case "2":
res = "doscientos "+res;
break;
case "3":
res = "trescientos "+res;
break;
case "4":
res = "cuatrocientos "+res;
break;
case "5":
res = "quinientos "+res;
break;
case "6":
res = "seiscientos "+res;
break;
case "7":
res = "setecientos "+res;
break;
case "8":
res = "ochocientos "+res;
break;
case "9":
res = "novecientos "+res;
break;
}
}
if(k == 4)
{
switch(c)
{
case "1":
res = "un mil "+res;
break;
case "2":
res = "dos mil "+res;
break;
case "3":
res = "tres mil "+res;
break;
case "4":
res = "cuatro mil "+res;
break;
case "5":
res = "cinco mil "+res;
break;
case "6":
res = "seis mil "+res;
break;
case "7":
res = "siete mil "+res;
break;
case "8":
res = "ocho mil "+res;
break;
case "9":
res = "nueve mil "+res;
break;
}
}
k++;
}
letras.value=res;
}
</script>
</html>
No hay comentarios:
Publicar un comentario