Back
Close

TXT2HTML

Statement
The program:
Transformer un tableau donné en entrée au format texte brut en code html.

Les coins de chaque cellule du tableau sont représentés par le caractère "plus" "+".
Les lignes horizontales entre deux coins d'une cellule sont représentées par le caractère "moins" "-"
Les lignes verticales entre deux coins d'une cellule sont représentées par le caractère "pipe" "|".
Les cellules peuvent être vides ou contenir (quelque part entre les quatre coins) une ou plusieurs lignes de données. Dans le cas où il y a plusieurs lignes de données, les retours à la ligne seront remplacés par des espaces dans le code html produit. Les espaces éventuels précédents ou suivants les données ne seront pas pris en compte.
INPUT:
Ligne 1 : Un entier N pour le nombre de lignes à lire.
N prochaines lignes : Une chaine s représentant une partie du tableau à transformer en HTML

OUTPUT:
Ligne 1 : la balise <table>
Lignes suivantes : la représentation html de chaque ligne du tableau sous la forme :
<tr><td>Contenu de la cellule 1</td><td>Contenu de la cellule 2</td><tr>
Dernière ligne : La balise </table>

CONSTRAINTS:
3 ≤ N ≤ 20
Longueur de s ≤ 50

EXAMPLE:
Input
3
+-------+
| 1 |
+-------+
Output
<table>
<tr><td>1</td></tr>
</table>
 

Tags

Difficulty

Test cases
Case unique Test
Input
3 +-------+ | 1 | +-------+
Output
<table> <tr><td>1</td></tr> </table>

Case unique Validator
Input
3 +-------+ | 2 | +-------+
Output
<table> <tr><td>2</td></tr> </table>

Grande case Test
Input
4 +-------+ | 1 | | | +-------+
Output
<table> <tr><td>1</td></tr> </table>

Grande case Validator
Input
4 +-------+ | | | 2 | +-------+
Output
<table> <tr><td>2</td></tr> </table>

Une ligne, deux colonnes Test
Input
3 +-------+----+ | 1 | 2 | +-------+----+
Output
<table> <tr><td>1</td><td>2</td></tr> </table>

Une ligne, deux colonnes Validator
Input
3 +-------+----+ | 3 | 4 | +-------+----+
Output
<table> <tr><td>3</td><td>4</td></tr> </table>

Deux lignes, quatre colonnes Test
Input
6 +-------+--------+----------+---+ | 7 | 350 | unknown | 5 | +-------+--------+----------+---+ | | | unknown | | | | -38 | | 10| +-------+--------+----------+---+
Output
<table> <tr><td>7</td><td>350</td><td>unknown</td><td>5</td></tr> <tr><td></td><td>-38</td><td>unknown</td><td>10</td></tr> </table>

Deux lignes, quatre colonnes Validator
Input
6 +-------+--------+----------+---+ | 7 | 350 | error | 5 | +-------+--------+----------+---+ | | | unknown | | | | -38 | | 10| +-------+--------+----------+---+
Output
<table> <tr><td>7</td><td>350</td><td>error</td><td>5</td></tr> <tr><td></td><td>-38</td><td>unknown</td><td>10</td></tr> </table>

Contenu sur deux lignes Test
Input
6 +-------+--------+----------+---+ | 7 | 350 | unknown | 5 | +-------+--------+----------+---+ | | | unknown | | | | -38 | error | 10| +-------+--------+----------+---+
Output
<table> <tr><td>7</td><td>350</td><td>unknown</td><td>5</td></tr> <tr><td></td><td>-38</td><td>unknown error</td><td>10</td></tr> </table>

Contenu sur deux lignes Validator
Input
6 +-------+--------+----------+---+ | 7 | 350 | unknown | 5 | +-------+--------+----------+---+ | | | unknown | | | | -38 | data | 10| +-------+--------+----------+---+
Output
<table> <tr><td>7</td><td>350</td><td>unknown</td><td>5</td></tr> <tr><td></td><td>-38</td><td>unknown data</td><td>10</td></tr> </table>

Tableau complet Test
Input
17 +-------+--------+----------+---+ | | Sales | Stock | V | +-------+--------+----------+---+ | | | 1300 | | | Jan | 100 | | + | +-------+--------+----------+---+ | Feb | 350 | 1200 | + | +-------+--------+----------+---+ | Mar | 250 | 850 | - | +-------+--------+----------+---+ | Apr | 450 | 600 | + | +-------+--------+----------+---+ | May | 380 | 150 | - | +-------+--------+----------+---+ | Jun | 300 | 1000 | - | | | |(reassort)| | +-------+--------+----------+---+
Output
<table> <tr><td></td><td>Sales</td><td>Stock</td><td>V</td></tr> <tr><td>Jan</td><td>100</td><td>1300</td><td>+</td></tr> <tr><td>Feb</td><td>350</td><td>1200</td><td>+</td></tr> <tr><td>Mar</td><td>250</td><td>850</td><td>-</td></tr> <tr><td>Apr</td><td>450</td><td>600</td><td>+</td></tr> <tr><td>May</td><td>380</td><td>150</td><td>-</td></tr> <tr><td>Jun</td><td>300</td><td>1000 (reassort)</td><td>-</td></tr> </table>

Tableau complet Validator
Input
17 +-------+--------+----------+---+ | | Sales | Stock | V | +-------+--------+----------+---+ | | | 1300 | | | Jul | 100 | | + | +-------+--------+----------+---+ | Aug | 350 | 1200 | + | +-------+--------+----------+---+ | Sep | 250 | 850 | - | +-------+--------+----------+---+ | Oct | 450 | 600 | + | +-------+--------+----------+---+ | Nov | 380 | 150 | - | +-------+--------+----------+---+ | Dec | 300 | 1000 | - | | | |(reassort)| | +-------+--------+----------+---+
Output
<table> <tr><td></td><td>Sales</td><td>Stock</td><td>V</td></tr> <tr><td>Jul</td><td>100</td><td>1300</td><td>+</td></tr> <tr><td>Aug</td><td>350</td><td>1200</td><td>+</td></tr> <tr><td>Sep</td><td>250</td><td>850</td><td>-</td></tr> <tr><td>Oct</td><td>450</td><td>600</td><td>+</td></tr> <tr><td>Nov</td><td>380</td><td>150</td><td>-</td></tr> <tr><td>Dec</td><td>300</td><td>1000 (reassort)</td><td>-</td></tr> </table>

Solution language

Solution

Stub generator input