La Web del Programador: Comunidad de Programadores
 
    Pregunta:  28096 - DIVISION DE 24 DIGITOS
Autor:  Alejandro Palacios Pedraza
Hola ,
mando este correo por si alguien me puede ayudar con este problema,
tengo que realizar una division en la que el divendo tiene 24 digitos y el divisor 2, y necesito saber como poder sacar el resto entero de esta division, ya que, al realizar dicha opracion Visual Basic me da el mensaje de desbordamiento.
Y no hay ningún tipo de variable en Visual Basic que pueda contener 24 digitos.
Un saludo y gracias de antemano

  Respuesta:  Javier Aparicio Rodríguez
Espero que esta función solucione tu problema.

Private Function Cociente(ByVal strDividendo As String, ByVal lngDivisor As Long, ByRef strResto As String) As String
Dim intContador As Integer
Dim strDividendoTemp As String
Dim strCocienteTemp As String

On Error Resume Next
If Len(CStr(lngDivisor)) > Len(strDividendo) Then
Cociente = 0
strResto = strDividendo
Else
strDividendoTemp = Left(strDividendo, Len(CStr(lngDivisor)))
For intContador = Len(CStr(lngDivisor)) To Len(strDividendo)
strCocienteTemp = CStr(CLng(strDividendoTemp) \ CLng(lngDivisor))
strResto = CStr(CLng(strDividendoTemp) Mod CLng(lngDivisor))
strDividendoTemp = strResto & Mid(strDividendo, intContador + 1, 1)
Cociente = Cociente & strCocienteTemp
Next intContador
If Left(Cociente, 1) = "0" Then
Cociente = Mid(Cociente, 2)
End If
End If
End Function