hola amigos como estan, bueno seguro ya se habran dado cuenta, hemos cambiado de diseño pero no de Objetivo el impartir, compartir y distribuir, lo que tu y yo sabemos, ahora somos el Equipo NewClass, dispuestos a escribir vivencias, problemas y soluciones, y para celebrarlo tenemos este problemita:
Nuestro amigo Fermin Esquivel, nos escribe desde PETEN - GUATEMALA: Supongamos que el usuario ingresará una línea de texto con longitud máxima de 40 caracteres. Escribir una función que reciba como parámetro la línea de texto y retorne una cadena centrada en una línea de 60 caracteres. Por ejemplo, si la entrada fuese: “Programar es una ciencia y un arte”, la salida debería ser:
%%%%%%%%% PROGRAMAR ES UNA CIENCIA Y UN ARTE %%%%%%%%
El primer problema que encontre, fue cuando tenia que ingresar una cadena con espacio, ingresaba la cadena pero solo hasta el primer espacio en Blanco, esto sucedia porque el espacio en blando es considerado como /0, y una cadena de caracteres solo se le considera hasta que termine con /0 o un " " espacio en blanco, para solucionar este inconveniente utilizamos la funcion, cin.getline('Cadena',longitud a guardar'), con esto leemos la linea completa para centrarlo, solo tenemos que restarle a la cantida total de caracteres (%% ... %%=60), la longitud de la cadena n=strlen('cadena'); entonces por medio de esta formula (60-n)/2; donde n es la longitud de la cadena, entonces secuenciando todo lo dicho, tenemos algo asi ...
Gracias por sus comentarios y sugerencias por interno, espero que sigamos asi, se despide su amigo Dext, y un saludo de parte de Todo el Staff, NewBie, Turri, Whishy. Que pases buen Dia.
Nuestro amigo Fermin Esquivel, nos escribe desde PETEN - GUATEMALA: Supongamos que el usuario ingresará una línea de texto con longitud máxima de 40 caracteres. Escribir una función que reciba como parámetro la línea de texto y retorne una cadena centrada en una línea de 60 caracteres. Por ejemplo, si la entrada fuese: “Programar es una ciencia y un arte”, la salida debería ser:
Desarrollamos, para trabajar con cadenas, utilizamos "string.h", en ella encontramos varias funciones para el trabajo de este tipo, si quieres saber mas puedes dar Click aqui.
El primer problema que encontre, fue cuando tenia que ingresar una cadena con espacio, ingresaba la cadena pero solo hasta el primer espacio en Blanco, esto sucedia porque el espacio en blando es considerado como /0, y una cadena de caracteres solo se le considera hasta que termine con /0 o un " " espacio en blanco, para solucionar este inconveniente utilizamos la funcion, cin.getline('Cadena',longitud a guardar'), con esto leemos la linea completa para centrarlo, solo tenemos que restarle a la cantida total de caracteres (%% ... %%=60), la longitud de la cadena n=strlen('cadena'); entonces por medio de esta formula (60-n)/2; donde n es la longitud de la cadena, entonces secuenciando todo lo dicho, tenemos algo asi ...
Gracias por sus comentarios y sugerencias por interno, espero que sigamos asi, se despide su amigo Dext, y un saludo de parte de Todo el Staff, NewBie, Turri, Whishy. Que pases buen Dia.
0 comentarios:
Publicar un comentario