-
Notifications
You must be signed in to change notification settings - Fork 0
/
simpleSymbols.js
73 lines (57 loc) · 2.03 KB
/
simpleSymbols.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
69
70
71
72
/**
* Simple Symbols Coderbyte Problem Solution
* Have the function SimpleSymbols(str) take the str parameter being passed and determine
* if it is an acceptable sequence by either returning the string true or false.
* The str parameter will be composed of + and = symbols with several characters between them
* (ie. ++d+===+c++==a) and for the string to be true each letter must be surrounded by a + symbol.
* So the string to the left would be false. The string will not be empty and will have at least one letter.
* @summary Takes a string parameter and returns true/false if letters are surrounded by "+"
* @link https://coderbyte.com/information/Simple%20Symbols
* @author Tam Nguyen <[email protected]>
* @param {String}
* @returns {Boolean}
*/
// --- Tests ---
console.log(SimpleSymbols("+d+=3=+s+")); // true
console.log(SimpleSymbols("+d===+a+")); // false
console.log(SimpleSymbols("aaaa")); // false
console.log(SimpleSymbols("+a=")); // false
console.log(SimpleSymbols("==a+")); // false
console.log(SimpleSymbols("2+a+a+")); // true
// --- Helper Functions ---
/**
* @param {String} str
* @returns {Boolean}
*/
function SimpleSymbols(str) {
let array = str.split("");
for(let i = 0; i < array.length; i++) {
if(array[i] != "+") {
/** @function checkChar to see if the letter is surrounded by two "+" symbols */
if(!checkChar(array[i-1], array[i], array[i+1])) {
return false;
}
}
}
return true;
}
/**
* @param {String} charLeft
* @param {String} charCheck
* @param {String} charRight
*/
function checkChar(charLeft, charCheck, charRight) {
charCheck = charCheck.toLowerCase();
inAlphabet = "abcdefghijklmnopqrstuvwxyz";
for(let i = 0; i < inAlphabet.length; i++) {
if(charCheck == inAlphabet.charAt(i)) {
if(charLeft == "+" && charRight == "+") {
return true;
}
else {
return false;
}
}
}
return true;
}