miércoles, 4 de noviembre de 2009

Código Digito Verificador

DIGITO VERIFICADOR
Este programa calcula el digito verificador de la cedula de identidad.

PUBLIC SUB Main()
DIM cedula, n1, n2, n3, n4, n5, n6, n7, n8, n9, n10 AS String
DIM p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, suma, residuo, v AS Integer
PRINT "<<<>>>"
PRINT "INGRESE NUMERO"
INPUT cedula
n1 = Mid(cedula, 1, 1)
n2 = Mid(cedula, 2, 1)
n3 = Mid(cedula, 3, 1)
n4 = Mid(cedula, 4, 1)
n5 = Mid(cedula, 5, 1)
n6 = Mid(cedula, 6, 1)
n7 = Mid(cedula, 7, 1)
n8 = Mid(cedula, 8, 1)
n9 = Mid(cedula, 9, 1)
n10 = Mid(cedula, 10, 1)
p1 = Val(n1) * 2
IF (p1 >= 10) THEN p1 = p1 - 9
p2 = Val(n2)
p3 = Val(n3) * 2
IF (p3 >= 10) THEN p3 = p3 - 9
p4 = Val(n4)
p5 = Val(n5) * 2
IF (p5 >= 10) THEN p5 = p5 - 9
p6 = Val(n6)
p7 = Val(n7) * 2
IF (p7 >= 10) THEN p7 = p7 - 9
p8 = Val(n8)
p9 = Val(n9) * 2
IF (p9 >= 10) THEN p9 = p9 - 9
suma = p1 + p2 + p3 + p4 + p5 + p6 + p7 + p8 + p9
residuo = suma MOD 10
IF (suma = 10) THEN
v = 0
ELSE
v = 10 - residuo
ENDIF
p10 = Val(n10)
IF (v = p10) THEN
PRINT "EL NUMERO INGRESADO ES CORRECTO...!!"
ELSE
PRINT "EL NUMERO QUE INGRESO ES INCORRECTO, POR FAVOR VERIFIQUE Y VUELVA A INGRESARLO NUEVAMENTE ...??"
ENDIF

END

No hay comentarios:

Publicar un comentario