Underc0de

Programación General => C / C++ => Mensaje iniciado por: d3adly en Junio 24, 2020, 12:29:46 AM

Título: Imprimir tabla ordenada C++ [Codigo]
Publicado por: d3adly en Junio 24, 2020, 12:29:46 AM
Hola comunidad les comparto un breve codigo que desarolle con el proposito de imprimir por pantalla tablas ordenadamente. Basicamente recorre los vectores que se le pasan como parametro, localiza el que contiene mas columnas y ajusta el resto para poder imprimir un cuadro. Luego columna por columna recorre hacia abajo cada palabra y detecta la de mayor longitud, logrando asi ajustar las demas al ancho antes obtenido.
Ejemplos:
Código (text) [Seleccionar]
Aqui algunas filas no contienen datos suficientes asi que se modifican para ajustarse
 *========================================================*
 | col1   | colum id 2 | col3   | column4 | col5   | col6 |
 *========================================================*
 | row1-1 | row1-2     | col1-3 | col1-4  | --     | --   |    <----   Ajustada
 *========================================================*
 | row2-1 | row2-2     | row2-3 | row2-4  | --     | --   |    <----   Ajustada
 *========================================================*
 | row3-1 | row3-2     | row3-3 | row3-4  | row3-5 | aa   | 
 *========================================================*
 | row4-1 | row4-2     | row4-3 | row4-4  | --     | --   |    <----   Ajustada
 *========================================================*
 | row5-1 | row5-2     | row5-3 | row5-4  | --     | --   |    <----   Ajustada
 *========================================================*


Aqui la cantidad de cabeceras no es suficiente, entonces se adapta
 *=================================================*
 | col1   | colum id 2 | col3   | column4 | --     |
 *=================================================*
 | row1-1 | row1-2     | col1-3 | col1-4  | --     |
 *=================================================*
 | row2-1 | row2-2     | row2-3 | row2-4  | --     |
 *=================================================*
 | row3-1 | row3-2     | row3-3 | row3-4  | row3-5 |    <----   Las demas se adaptan a esta
 *=================================================*
 | row4-1 | row4-2     | row4-3 | row4-4  | --     |
 *=================================================*
 | row5-1 | --         | --     | --      | --     |
 *=================================================*


 *=========================================*
 | 1 | colum id 2 | c3   | c4     | --     |
 *=========================================*
 | 1 | row1-2     | c3   | col1-4 | --     |
 *=========================================*
 | 1 | row2-3     | c4   | --     | --     |
 *=========================================*
 | 1 | row3-2     | c333 | row3-4 | row3-5 |
 *=========================================*
 | 1 | row4-2     | 43   | row4-4 | --     |
 *=========================================*
 | 5 | --         | --   | --     | --     |
 *=========================================*

Aqui el codigo Beautiful-Table (https://github.com/d3adlym1nd/Beautiful-Table), cualquier comentario o aporte es bien recibido, espero les sea de utilidad en alguno de sus proyectos.

Saludos.
Título: Re:Imprimir tabla ordenada C++ [Codigo]
Publicado por: DtxdF en Junio 24, 2020, 09:13:34 PM
Muy bueno @d3adly (https://underc0de.org/foro/index.php?action=profile;u=97561), me encantó la menera en la que se ordenan las tablas, sigue así y muchas gracias por tu colaboración  ;D

~ DtxdF
Título: Re:Imprimir tabla ordenada C++ [Codigo]
Publicado por: d3adly en Junio 24, 2020, 09:25:47 PM
Gracias @DtxdF (https://underc0de.org/foro/index.php?action=profile;u=71723), la idea era hacer una tabla adaptable a la informacion recibida sin importar que cada fila sea diferente en longitud.
Título: Re:Imprimir tabla ordenada C++ [Codigo]
Publicado por: Darkman55 en Diciembre 25, 2020, 02:39:55 PM
gracias por la asignatura, soy un apasionado de c ++, estoy aprendiendo poco a poco, nos dio una idea de cómo ordenar las estructuras