-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkata.js
38 lines (36 loc) · 2.69 KB
/
kata.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
const letters = {
'A': [' AAA ', 'A A', 'A A', 'AAAAA', 'A A', 'A A', 'A A'],
'B': ['BBBB ', 'B B', 'B B', 'BBBB ', 'B B', 'B B', 'BBBB '],
'C': [' CCC ', 'C C', 'C ', 'C ', 'C ', 'C C', ' CCC '],
'D': ['DDDD ', 'D D', 'D D', 'D D', 'D D', 'D D', 'DDDD '],
'E': ['EEEEE', 'E ', 'E ', 'EEEEE', 'E ', 'E ', 'EEEEE'],
'F': ['FFFFF', 'F ', 'F ', 'FFFFF', 'F ', 'F ', 'F '],
'G': [' GGG ', 'G G', 'G ', 'G GGG', 'G G', 'G G', ' GGG '],
'H': ['H H', 'H H', 'H H', 'HHHHH', 'H H', 'H H', 'H H'],
'I': ['IIIII', ' I ', ' I ', ' I ', ' I ', ' I ', 'IIIII'],
'J': ['JJJJJ', ' J', ' J', ' J', ' J', ' J', 'JJJJ '],
'K': ['K K', 'K K ', 'K K ', 'KK ', 'K K ', 'K K ', 'K K'],
'L': ['L ', 'L ', 'L ', 'L ', 'L ', 'L ', 'LLLLL'],
'M': ['M M', 'MM MM', 'M M M', 'M M', 'M M', 'M M', 'M M'],
'N': ['N N', 'NN N', 'N N', 'N N N', 'N N', 'N NN', 'N N'],
'O': [' OOO ', 'O O', 'O O', 'O O', 'O O', 'O O', ' OOO '],
'P': ['PPPP ', 'P P', 'P P', 'PPPP ', 'P ', 'P ', 'P '],
'Q': [' QQQ ', 'Q Q', 'Q Q', 'Q Q', 'Q Q Q', 'Q QQ', ' QQQQ'],
'R': ['RRRR ', 'R R', 'R R', 'RRRR ', 'R R ', 'R R ', 'R R'],
'S': [' SSS ', 'S S', 'S ', ' SSS ', ' S', 'S S', ' SSS '],
'T': ['TTTTT', ' T ', ' T ', ' T ', ' T ', ' T ', ' T '],
'U': ['U U', 'U U', 'U U', 'U U', 'U U', 'U U', ' UUU '],
'V': ['V V', 'V V', 'V V', 'V V', 'V V', ' V V ', ' V '],
'W': ['W W', 'W W', 'W W', 'W W W', 'W W W', 'W W W', ' W W '],
'X': ['X X', 'X X', ' X X ', ' X ', ' X X ', 'X X', 'X X'],
'Y': ['Y Y', 'Y Y', ' Y Y ', ' Y ', ' Y ', ' Y ', ' Y '],
'Z': ['ZZZZZ', ' Z', ' Z ', ' Z ', ' Z ', 'Z ', 'ZZZZZ'],
' ': [' ', ' ', ' ', ' ', ' ', ' ', ' ']
}
const blockPrint = (input, s = input.toUpperCase().trim()) =>
s ? [...Array(7)]
.map((_, i) => [...Array(s.length)].map((__, j) => letters[s[j]][i]).join(' ').trimEnd())
.join('\n') :
''
console.log(blockPrint("heLLo WorLD"));
//==="H H EEEEE L L OOO W W OOO RRRR L DDDD\nH H E L L O O W W O O R R L D D\nH H E L L O O W W O O R R L D D\nHHHHH EEEEE L L O O W W W O O RRRR L D D\nH H E L L O O W W W O O R R L D D\nH H E L L O O W W W O O R R L D D\nH H EEEEE LLLLL LLLLL OOO W W OOO R R LLLLL DDDD";m);