![]() |
Problemas para realizar una curp necesito algo de ayuda
Pues ya me desespere y acudo a ustedes para ver que se soluciona les pongo el codigo y despues lo que sale mal.
Cita:
otras dudas. si para cerrar el bucle FOR pongo I:=b; me sale error y me dice "Assignment to FOR-Loop variable 'I'" por eso b:=I; pero al parecer no me lo cierra y se va hasta el final y por me copia la ultima vocal. |
no entiendo
quieres sacar la Primera Vocal de lo que coloques en el EDIT ejemplo si Colocas Alvarado debe mostrar la A ? si colocas Colmenares debe mostrar la O ? si colocar swchgener debe mostrar la E ? |
P.D.
cuando coloques codigo delphi utiliza el icono del partenon para poder entenderlo bien |
Cita:
y la d la estoy usando para la primer vocal a partir de la segunda letra hasta el final. |
disculpa pero sigo sin entender
podrias colocar ejemplos de como quieres que te salga? algo asi como lo que te puse yo |
Hola madrid_cr7.
Debo reconocer que no estoy menos desorientado que oscarac con la explicación... Pero si me atengo 'literalmente' a tu pedido: Cita:
Llamada de ejemplo:
Un saludo. |
Cita:
hasta ahi va bien todo ahora con lo que resta del apellido tomar la primer vocal que este. ejemplo OSAMA - seria la A ESHJOS - seria la O PEDROZA - seria la E. cuando dije a partir de la segunda letra me refiero a que la primer letra ya la copie y esa letra se descarta aunque sea vocal, y con lo que resta del nombre ejemplo de OSAMA la O a la copie tengo que tomar la primer vocal con lo que resta del apellido que seria SAMA. Cita:
|
Cita:
por eso quiero ver cual es mi error en el ejemplo que puse arriba ya tengo toda la curp hecha solo me falta eso es mi unico error |
Hola madrid_cr7.
Cita:
Si te referis a que no te permiten usar una función, incorporá a tu código la porción de la función correspondiente a la extracción de la primera vocal a partir de la segunda letra. En tu caso basta con reemplazar Cad[i] por Edit1.Text[i] (que es donde está el apellido) y al salir del ciclo while, tendrás la vocal buscada en Edit1.Text[i] ... Edito: Veo que la variable 'i' está declarada en tu procedimiento, función o cuerpo de programa. Por lo que supongo que deberías usar otra como contador del while. Un saludo. |
Creo que lo que te falta es poner un break o un exit en cuanto encuentre una vocal. Tal como lo tienes, si encuentra la segunda vocal va bien, pero sigue dentro del bucle for.
Pruebalo y nos lo comentas Saludos |
Hola de nuevo madrid_cr7.
No había reparado pero este hilo estaba en el foro Internet, al igual que este otro tuyo: Necesito ayuda para un ... que también fué movido. Los temas relacionados con programación en general tienen su lugar en el foro OPP o en Varios. Esto es a fín de que si un día tenés un problema de internet (por ejemplo) y busques la solución en ese foro, no te encuentres viendo mensajes de como se usa el Quick Report... :) Si dudás donde pueda ir tu mensaje, ponelo en el foro Varios y algún moderador se encargará de reubicarlo si así corresponde. Un saludo y muchas gracias. |
ecfisa:
agradesco mucho tu ayuda pero no logro entender, esque yo apenas soy principiante en esto, no podrias corregir el codigo que puse arriba agregando lo que tu me dices y quitando lo que no deberia ir? Elkurgan: el exit tengo entendido que finaliza el programa, el break jamas lo he usado, como lo usaria para que en cuanto encuentre la vocal se salga del bucle for y continue con el demas codigo? Les agradesco mucho a los 3 por tomarse su tiempo. |
Hola madrid_cr7.
Si en Edit9.Text tiene que quedar la primera vocal a partir del segundo caracter del apellido, tu código reformado quedaría así: Te explico que es lo que hace: La primera letra hay que ignorarla sea vocal o consonante y a partir de la segunda recorremos la cadena incrementando la variable 'i' hasta que encuentra una vocal. Alli termina el ciclo while y por supuesto el valor 'i' tiene la posición de la primera vocal encontrada a partir del segundo caracter. Esa posición es usada como subindice de Edit1.Text[i] para obtener el caracter buscado. La función UpCase convierte a mayúsculas lo que estamos comparando, por que no es lo mismo 'A' que 'a', sin ella tendría que haber echo: Al finalizar el ciclo while, se asigna a Edit9.Text la vocal encontrada en Edit1.Text[i]. Si hay algo que no te quedó en claro decimelo y lo vamos a ir tratando de aclarar. Un saludo. |
hice esto rapidamente
la idea es que despues de digitar el apellido en el edit presiono un boton y me sale el label con la primera letra y la primera vocal
fijate si te es de utilidad |
Cita:
Cita:
un saludo a los 2 y gracias |
ah ok..
es que como dijiste que debias hacerlo con for.... |
Cita:
una vez mas gracias a ambos |
Cogido CURP
Hola ....
Fijate que navengando en buscar de información acerca de como calcular la CURP (en México), di con tu post el cual segun el primer mensaje posteado que dice "Problemas para realizar una curp necesito algo de ayuda", preguntas acerca de como obtener la segunda vocal.....bueno fijate que yo ando en busca de código para calcular la CURP y me preguntaba si pudieras compartir tu codigo aqui en el foro.... Te agradezco.Saludos. |
La franja horaria es GMT +2. Ahora son las 06:14:22. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi