resuelto_5.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0
Transitional//EN">
<html>
<head>
<title>HTMLWeb. Curso Práctico de ASP. Ejercicio resuelto
5</title>
<style type="text/css">
td,imput{font-size:12px;font-family:Verdana,Helvetica;}
</style>
</head>
<body bgcolor="#ffff99">
<script
language="VBScript">
//Declaramos las variables de la
página
Dim numero, numeroAnt, iva, ivaAnt, subtotal, depaso,
total
Dim longnumero1, formato1, reverso, ciclos, resto1,
pasos()
Dim i, previo(), resultado, miTemp1, miTemp2, resto2,
retorno
//Función principal de cálculo
Function
calcula()
//Recogemos los datos de las cajas del
formulario
numeroAnt =
document.forms.ejemplo.cantidad.value
ivaAnt =
document.forms.ejemplo.iva.value
miTemp1=IsNumeric(numeroAnt)
miTemp2=IsNumeric(ivaAnt)
//Comprobamos que los datos
introducidos son numéricos
If (miTemp1=false OR
miTemp2=false OR numeroAnt="" OR ivaAnt="")
Then
MsgBox "Debes introducir valores
numéricos correctos. Prueba de nuevo"
Else
//Quitamos espacios en blanco de los
datos
numero = Trim(Replace(numeroAnt, " ",
""))
iva = Trim(Replace(ivaAnt, " ",
""))
//Calculamos el
resultado
subtotal =
(numero*iva)/100
//Formateamos el
resultado
total = FormatNumber(subtotal, 2,
-1, 0, 0)
formato1 = Replace(total, ".",
",")
depaso = Split(formato1,
",")
//Parte entera del
resultado
reverso=StrReverse(depaso(0))
longnumero1=Len(reverso)
//Calculamos los
grupos de 3 dígitos de la parte entera y lo que queda
suelto
ciclos=Fix(longnumero1/3)
resto1=longnumero1
Mod 3
Redim
pasos(ciclos)
Redim
previo(ciclos)
i=1
//Obtenemos el orden de los grupos y les
damos la vuelta
For n=1 To
ciclos
pasos(n) = Mid(
reverso, i, 3)
i=i+3
previo(ciclos-n+1)=StrReverse(pasos(n))
Next
//Parte decimal del
resultado
resto2=Left(depaso(0),resto1)
//Si no hay
parte entera suelta
If resto2=""
Then
retorno = (Mid(Join(previo,
"."),2)) & "," & depaso(1) & " €"
//Si la hay
Else
retorno=resto2 &
Join(previo, ".") & "," & depaso(1) & "
€"
End If
//Mandamos el resultado a la caja del
formulario
document.forms.ejemplo.resultado.value=retorno
End
If
End Function
</script>
<form
name="ejemplo">
<table cellpadding="0" cellspacing="0" border="0"
align="center">
<tr>
<td
width="150">Introduce una catidad:</td>
<td><input type="text" name="cantidad"
size="15"></td>
</tr>
<tr>
<td>Introduce el
IVA:</td>
<td><input type="text" name="iva"
size="15"></td>
</tr>
<tr>
<td colspan="2"
height="15"> </td>
</tr>
<tr>
<td width="150">El resultado
es:</td>
<td><input type="text"
name="resultado" size="15" readonly></td>
</tr>
<tr>
<td colspan="2"
height="15"> </td>
</tr>
<tr>
<td> </td>
<td><input
type="button" value="calcular" onclick="calcula()"></td>
</tr>
</table>
</form>
</body>
</html>