Verificador de cedula de ecuador

Hola necesito el código fuente en visual basic 6.0 para validar cedulas
1.- la cedula tiene 10 posiciones en el cual hay que separar en pos1 pos2, pos3, pos4, pos5, pos6, pos7, pos8, pos9, pos10.(son variables)
0503925877
pos1 0
pos2 5
pos3 0
pos4 3
pos5   9                                                                                                                                 pos6   2
pos7   5
pos8   8
pos9   7
pos10 7 comprobador
2. Hay que multiplicar las pisiciones impares * 2 es decir pos1 pos3, pos5, pos7, pos9 "cada posicion se multiplica"
pos1 0*2=0
pos3 0*2=0
pos5 9*2=18
pos7 5*2=10
pos9 7*2=14
3. Despues si el resultado es solo mayor que nueve restarle 9 pero si el resultado es 0 no restarle
0*2=0 no
0*2=0 no
9*2=18 - 9 = 9
5*2=10 - 9 = 1
7*2=14 - 9 = 5
4. Despues de ese resultado sumar todas las posiciones
pos1   0 +
pos2   5 +
pos3   0 +
pos4   3 +
pos5   9 +                                                                                                                               pos6   2 +
pos7   1 +
pos8   8 +
pos9   5 +
El cual da un resultado de 33
5. Después de ese resultado anotar a la decena más próxima en este caso es 40
6. Después restarle 40-33 y que dará 7
Y así se comprueba la cedula de forma matemática ahora me puedes ayudar en visual basic 6.0
Nota: Cuando el residuo es cero(0) el dígito verificador es 0 ojala me hayas comprendido gracias por tu ayuda
saludos
1

1 respuesta

1
Respuesta de
Es un buen reto, me podrías enviar algunos ejemplos de las cedulas para ver como deberían quedar y con gusto te ayudo.
Saludos
Solo quiero que la cedula sea ingresada eb un text1 que llame a la función un command1 es decir que cuando yo ingrese una cedula cualquiera ejemplo 0502539877 y le doy click en el command1 me salga un msgbox que diga su cedula es correcta pero para realizar la validación tiene que seguir el ejemplo anterior como es el primer paso multiplicar por 2 las posiciones impares de la cedula y luego si el resultado de cada una de las posiciones es mayor que nueve restarle 9 pero si es 9 o 0 no realizar la resta después de haber restado con el resultado de cada una de las posiciones sumar todas las posiciones es decir pares e impares pero menos el ultimo dígito en este caso seria 7 el cual daría un resultado de 33 (pero si la suma da como resultado una decena ejemplo 30 y el ultimo dígito de la cedula es 0 entonces no aproximar a la decena y que salga un msgbox su cedula es correcta)en donde tenenos que escribir la decena más próxima en este caso seria 40 y hacer la resta 40-33 que da como resultado 7 y sabemos que la cedula es correcta.
Espero que me haya entendido.
Codifique el código en VB 6.0 y este numero de cedula como ejemplo 0502539877 o 0501756191 o 0501427769
Gracias por su ayuda.
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje

Más respuestas relacionadas

¿No es la pregunta que estabas buscando?
Puedes explorar otras preguntas del tema Visual Basic o hacer tu propia pregunta: