No Polo Norte chegou o ChatGPT e o elfo Sam Elfman está trabalhando em um aplicativo de administração de presentes e crianças.
Para melhorar a apresentação, ele quer criar uma função drawTabledraw_table que receba um array de objetos e o converta em uma tabela de texto.
A tabela desenhada deve ter:
A, B, C...).A função recebe um segundo parâmetro sortBy que indica o nome do campo pelo qual se devem ordenar as linhas. A ordenação será alfabética ascendente se os valores forem strings e numérica ascendente se forem números.
Veja o exemplo para ver como você deve desenhar a tabela:
drawTable(
[
{ name: 'Charlie', city: 'New York' },
{ name: 'Alice', city: 'London' },
{ name: 'Bob', city: 'Paris' }
],
'name'
)
// +---------+----------+
// | A | B |
// +---------+----------+
// | Alice | London |
// | Bob | Paris |
// | Charlie | New York |
// +---------+----------+
drawTable(
[
{ gift: 'Book', quantity: 5 },
{ gift: 'Music CD', quantity: 1 },
{ gift: 'Doll', quantity: 10 }
],
'quantity'
)
// +----------+----+
// | A | B |
// +----------+----+
// | Music CD | 1 |
// | Book | 5 |
// | Doll | 10 |
// +----------+----+draw_table(
[
{ 'name': 'Charlie', 'city': 'New York' },
{ 'name': 'Alice', 'city': 'London' },
{ 'name': 'Bob', 'city': 'Paris' }
],
'name'
)
# +---------+----------+
# | A | B |
# +---------+----------+
# | Alice | London |
# | Bob | Paris |
# | Charlie | New York |
# +---------+----------+
draw_table(
[
{ 'gift': 'Book', 'quantity': 5 },
{ 'gift': 'Music CD', 'quantity': 1 },
{ 'gift': 'Doll', 'quantity': 10 }
],
'quantity'
)
# +----------+----+
# | A | B |
# +----------+----+
# | Music CD | 1 |
# | Book | 5 |
# | Doll | 10 |
# +----------+----+
