Título: [emu8086]Ayuda Ordenar Vector Publicado por: Vanessa Delgado en 23 Octubre 2016, 05:18 am Hola,¿Como estan? :) Realmente quisiera unas sugerencias o que me hagan la correciones necesarias,serian muy amables por eso y por su tiempo :) ,Les paso a detallar el enunciado:
Un programa que ordene las letras de una oración de hasta 40 (cuarenta) caracteres juntando las vocales y las consonantes de acuerdo a la letra de comienzo, de la siguiente manera: a) Se debe permitir el ingreso de cualquier elemento del teclado (entiéndase: letras, números y caracteres especiales). b) Si la palabra comienza con vocal, todas las vocales deberán ser ubicadas al principio siguiendo el orden de aparición y posteriormente las consonantes de acuerdo a su aparición. c) Si en el medio de la palabra aparece un número, o un carácter especial, este debe ser eliminado del conjunto de palabras, y colocado separadamente indicando cual es la posición del mismo en el conjunto original. d) Si el carácter especial o número aparece como cierre de una palabra, frase u oración este debe conservar el lugar y no ser separado del conjunto inicial. Ejemplos: Estos serían 3 ejemplos básicos, pero podría escribirse cualquier cosa tenga o no sentido 1)Esta historia es larga y entusiasta 2)La comi#$da esta aceitosa pero sa;=brosa 3)Estaba esperando1 cuando aparecio? Bien ahora analicemos uno por uno. 1)Esta historia es larga y entusiasta DEBE DEVOLVER: East hstrioia es lrgaa y euiaantsst Observen que en este ejemplo la tercera palabra no tiene modificación porque es de 2 letras pero las otras si se han modificado para obtener el resultado solicitado. Vamos al segundo ejemplo 2)La comi#$da esta aceitosa pero sa;=brosa DEBE DEVOLVER: La cmdoia east aeioacts preo sbrsaoa # posicion 8 $ posicion 9 ; posicion 34 = posicion 35 Como ven hemos sacado los caracteres especiales. En este ejemplo están seguidos pero pueden estar en cualquier lugar y también tengan en cuenta que también pueden ser números. Vamos al tercer ejemplo. 3)Estaba esperando1 cuando aparecio? DEBE DEVOLVER: Eaastb eeaosprnd1 cnduao aaeioprc? Nótese que en este ejemplo los números y caracteres especiales que aparecen no se mueven y no se informan porque están al final de la palabra. Los ejemplos dos y tres pueden estar mezclados. ----------------------------------------------------------------------------------------------------------------------------------------------------- Les voy a explicar brevemente el codigo y a grandes rasgos: Tengo un primero vector que obtiene los caracteres,luego lo que hago es proceder a "rastrear" los caracteres y dividirlos segun sean vocales (mayusculas o minusculas) o consonantes(mayusculas o minusculas) .Si,obviamente no es ninguno de ellos,es un caracter especial: Les explico los procedimientos brevemente y a grandes rasgos: A)Obtengo mi primer vector en la etiqueta veccadena_llenado B)Luego voy a la etiqueta Rastreo,en donde pregunto si son vocales o consonantes ,si es verdad,voy a sus respectivas etiquetas hago la impresion del caracter(no se que elemento puedo usar para esto un segundo vector o variable de tipo string que acepte la escritura de caracteres) C)Si no es ninguna vocal o consonante sera un caracter especial,en donde voy hasta un procedimiento que se encarga de SEPARAR ,IMPRIMIR Y DECIRME LA POSICION EN LA CUAL FUE ENCONTRADO Bueno ahora les voy a mostrar como lo tengo planificado ( yo uso el emu8086 ): Código
Espero sus sugerencias ya que mi planteo presenta errores y espero sus consejos,COMO LES DIJE ANTES LES AGRADEZCO SU TIEMPO,DE VERDAD,MUCHAS GRACIAS. Mod: Los códigos deben ir en etiquetas GeSHi |