Instruções
Alinhar colunas
Dado um array de muitas linhas, onde os campos dentro de uma linha são delineados por um único caractere
$, escreva um programa que alinha cada coluna de campos, garantindo que as palavras em cada coluna estejam separadas por pelo menos um espaço. Além disso, permita que cada palavra em uma coluna seja deixada justificada à esquerda, justificada à direita ou justificada ao centro em sua coluna.
O que fazer:
Use o texto a seguir para testar seus programas:
Critérios de Aceitação:
const testText = [
'Given$a$text$file$of$many$lines',
'where$fields$within$a$line$',
'are$delineated$by$a$single$"dollar"$character',
'write$a$program',
'that$aligns$each$column$of$fields',
'by$ensuring$that$words$in$each$',
'column$are$separated$by$at$least$one$space.',
'Further,$allow$for$each$word$in$a$column$to$be$either$left$',
'justified,$right$justified',
'or$center$justified$within$its$column.'
];
Note que:
- As linhas de textos de entrada de exemplo podem, ou não, ter caracteres de dólar à frente.
- Todas as colunas devem compartilhar o mesmo alinhamento.
- Caracteres de espaço consecutivos adjacentes produzidos ao final das linhas são insignificantes para os propósitos da tarefa.
- O texto de saída será exibido em uma fonte monoespaçada em um editor de texto simples ou terminal básico. As linhas nele devem ser unidas usando o caractere de nova linha (
\n). - O espaço mínimo entre colunas deve ser calculado a partir do texto e não inserido no código de antemão.
- Não é um requisito adicionar caracteres separados entre ou em torno das colunas.
testText, após justificar à direita, à esquerda e ao centro, respectivamente, será:
' column are separated by at least one space.\n'
'column are separated by at least one space.\n'
' column are separated by at least one space.\n'Critérios de Aceitação:
Testes:
- `formatText` deve ser uma função.
- `formatText(testText, 'right')` deve produzir texto com colunas justificadas à direita.
- `formatText(testText, 'left')` deve produzir texto com colunas justificadas à esquerda.
- `formatText(testText, 'center')` deve produzir texto com colunas justificadas ao centro.
Console