-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdiamond.js
68 lines (59 loc) · 1.62 KB
/
diamond.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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
const valuesLetter ={
A:1,B:2,C:3,D:4,E:5,F:6,G:7,H:8,I:9,J:10,K:11,L:12,M:13,N:14,O:15,P:16,Q:17,R:18,S:19,T:20,U:21,V:22,W:23,X:24,Y:25,Z:26
}
let diamond = (pattern)=>{
let diamond ="";
let alphabet = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
if(pattern.length>1||isNaN(pattern) == false){
return `Not possible just 1 letter`
}
pattern=pattern.toUpperCase();
pattern =valuesLetter[pattern];
for (let i = 1; i <= pattern; i++) {
for (let j = 1; j <= pattern - i; j++) {
diamond+='-';
}
for (let k = 0; k < 2 * i - 1; k++) {
if(k == 0 || k ==2*i-2 ){
diamond+=alphabet[i-1];
}
else{
diamond+='*';
}}
for (let j = 1; j <= pattern - i; j++) {
diamond+='-';
}
diamond+=`\n`;
}
/************************** */
for(i = pattern-1 ; i > 0; i--){
for(let j = 1; j < pattern-i+1 ; j++ ){
diamond +=`-`;
}
for(let j = 1; j <= 2 * i - 1; j++ ){
if(j == 1 || j == 2 * i - 1 ){
diamond += alphabet[i-1];
}
else{
diamond += `*`;
}
}
for(j = 1; j < pattern - i + 1; j++){
diamond += `-`;
}
diamond+=`\n`;
}
return diamond
}
let letter = 'G';
let letter2 = 'z';
let letter3 = 'rweqeQWE';
let letter4 = 2356;
let letter5 = 2;
let letter6 = `9`;
console.log(diamond(letter));
console.log(diamond(letter2));
console.log(diamond(letter3));
console.log(diamond(letter4));
console.log(diamond(letter5));
console.log(diamond(letter6));