Skip to content

Latest commit

 

History

History
85 lines (53 loc) · 2.05 KB

README.md

File metadata and controls

85 lines (53 loc) · 2.05 KB

Reto_01

Este año los elfos han comprado una máquina que envuelve regalos. Pero… ¡no viene programada! Necesitamos crear un algoritmo que le ayude en la tarea.

A la máquina se le pasa un array con los regalos. Cada regalo es un string. Necesitamos que la máquina envuelva cada regalo en papel de regalo y lo coloque en un array de regalos envueltos.

El papel de regalo es el símbolo * y para envolver un regalo se coloca el símbolo * de forma que rodee totalmente al string por todos los lados. Por ejemplo:

const gifts = ['cat', 'game', 'socks'];
const wrapped = wrapping(gifts);

console.log(wrapped);
/* [
  "*****\\n*cat*\\n*****",
  "******\\n*game*\\n******",
  "*******\\n*socks*\\n*******"
] */

Como ves, el papel de regalo envuelve el string. Por arriba y por abajo, para no dejar ningún hueco, las esquinas también están cubiertas por el papel de regalo.

Nota: El carácter \n representa un salto de línea.

¡Ojo! Asegúrate que pones el número correcto de * para envolver completamente el string. Pero no demasiados. Sólo los necesarios para cubrir el string.

Ah, y no modifiques (mutes) el array original.


Resultados

Test #01

Test: return type;

Expected: 'array';

Actual: 'array';

Test #02

Test: wrapping(gifts);

Expected: ['*****\n*cat*\n*****', '******\n*game*\n******', '*******\n*socks*\n*******'];

Actual: ['*****\n*cat*\n*****', '******\n*game*\n******', '*******\n*socks*\n*******'];

Test #03

Test: wrapping(['midu']);

Expected: ['******\n*midu*\n******'];

Actual: ['******\n*midu*\n******'];

Test #04

Test: wrapping(['a']);

Expected: ['***\n*a*\n***'];

Actual: ['***\n*a*\n***'];

Test #05

Test: wrapping an empty array should return an empty array

Expected:
[]

Actual:
[]