Título: [SOLUCIONADO] Programa Sencillo: Representación de un Array Publicado por: LaLakers94 en 2 Mayo 2014, 18:23 pm Hola, estoy empezando a programar con C y me he atascado en un problema aparentemente sencillo.
Consiste mostrar los elementos de un vector por pantalla entre corchetes “[...]” y separados por coma (,) mediante la función 'escribirVector' que recibe un vector constante y un valor entero n (este representa el número de elementos reales del vector). La verdad es que no tengo ni idea. Mi código conciste en esto: Código
Que claro está mal, me devuelve n veces la cadena [Elemento]. ¿alguna sugerencia para conseguir el resultado que busco ([e[0],e[1], ... ])? Título: Re: [AYUDA] Programa Sencillo: Representación de un Array Publicado por: rir3760 en 2 Mayo 2014, 19:19 pm Casi lo tienes, solo hay que realizar cambios menores a la función. En pseudocodigo:
1) Imprimir '[' 2) (Bucle) Imprimir los primeros N-1 elementos (N == numero de elementos del array) en la forma "i, ". 3) Imprimir el ultimo elemento (si existe) seguido del carácter ']'. No es difícil, lo resuelves en unos minutos. Un saludo Título: Re: [AYUDA] Programa Sencillo: Representación de un Array Publicado por: leosansan en 2 Mayo 2014, 20:00 pm ¿Algo como esto?: Código
Por si te sirve de ayuda: Código
El "\b" es para retroceder y que se coma la última coma, vamos que no termine en coma. ¡¡¡¡ Saluditos! ..... !!!! (http://st.forocoches.com/foro/images/smilies/aaaaa.gif) Título: Re: [AYUDA] Programa Sencillo: Representación de un Array Publicado por: amchacon en 2 Mayo 2014, 20:04 pm El "\b" es para retroceder y que se coma la última coma, vamos que no termine en coma. Otra forma es imprimir el primero y despues ir imprimiendo coma + numero:Código
A mí personalmente lo de retroceder no me gusta. Título: Re: [AYUDA] Programa Sencillo: Representación de un Array Publicado por: leosansan en 2 Mayo 2014, 20:42 pm Otra forma es imprimir el primero y después ir imprimiendo coma + numero: .................... A mí personalmente lo de retroceder no me gusta. Es justo lo contrario a lo que proponía rir3760, imprimir desde el primero hasta el penúltimo, y el último aparte. Mi propuesta es la más coherente, no imprime ninguno por separado. :laugh: ¡¡¡¡ Saluditos! ..... !!!! (http://st.forocoches.com/foro/images/smilies/aaaaa.gif) Título: Re: [AYUDA] Programa Sencillo: Representación de un Array Publicado por: LaLakers94 en 5 Mayo 2014, 11:48 am Hola, gracias a todos.
Finalmente con lo que me dijo rir3760 hice este codigo: Código
Muy similar a lo que me comentáis. Por cierto, ¿el funcionamiento de '\b' consiste en suprrimir el último caracter? Por ejemplo con la cadena s = "Hola me gustan los Lakers.\n'' podría eliminar el salto de línea concatenándole '\b' a la cadena? Título: Re: [AYUDA] Programa Sencillo: Representación de un Array Publicado por: rir3760 en 5 Mayo 2014, 17:49 pm Por eficiencia deberías sacar la comprobación fuera del bucle, de esta forma:
Código En el raro caso de que el numero de elementos pueda ser menor o igual a cero debes verificar eso antes de imprimir el ultimo elemento ¿el funcionamiento de '\b' consiste en suprrimir el último caracter? Por ejemplo con la cadena s = "Hola me gustan los Lakers.\n'' podría eliminar el salto de línea concatenándole '\b' a la cadena? No. El efecto de '\b' solo aplica si envías la cadena a la salida estándar, no funcionara si la cadena la almacenas en otro array o la envías a un archivo.Un saludo |