function findAnagrams(letters) var sortedInput = sortLetters(letters); var results = []; for (var i = 0; i < wordList.length; i++) if (sortLetters(wordList[i]) === sortedInput) results.push(wordList[i]);
// Sort by score descending possibleWords.sort(function(a, b) return calculateScore(b) - calculateScore(a); );
function canMakeWord(word, availableLetters) { var letterCount = {}; for (var i = 0; i < availableLetters.length; i++) for (var i = 0; i < word.length; i++) var ch = word[i]; if (!letterCount[ch]) return false; letterCount[ch]--; return true; } Step 6 – Scrabble Score Calculator var letterScores = a:1, e:1, i:1, o:1, u:1, l:1, n:1, s:1, t:1, r:1, d:2, g:2, b:3, c:3, m:3, p:3, f:4, h:4, v:4, w:4, y:4, k:5, j:8, x:8, q:10, z:10 ; function calculateScore(word) var score = 0; for (var i = 0; i < word.length; i++) score += letterScores[word[i]] return score; word game helper code.org
var wordList = ["cat", "act", "bat", "tab", "rat", "art", "tar"]; function sortLetters(word) return word.split('').sort().join('');
function findWildcardMatches(pattern, lettersAvailable) // pattern = "c?t", lettersAvailable unused here but could restrict var matches = []; for (var i = 0; i < wordList.length; i++) if (matchesPattern(wordList[i], pattern)) matches.push(wordList[i]); return matches; var results = []
? represents any letter.
function matchesPattern(word, pattern) if (word.length !== pattern.length) return false; for (var i = 0; i < pattern.length; i++) if (pattern[i] !== '?' && pattern[i] !== word[i]) return false; for (var i = 0
function isValidWord(word) return wordList.includes(word.toLowerCase());
return results;
return true;
// Display var output = ""; for (var i = 0; i < possibleWords.length; i++) output += possibleWords[i] + " (" + calculateScore(possibleWords[i]) + " pts)\n";
function findAnagrams(letters) var sortedInput = sortLetters(letters); var results = []; for (var i = 0; i < wordList.length; i++) if (sortLetters(wordList[i]) === sortedInput) results.push(wordList[i]);
// Sort by score descending possibleWords.sort(function(a, b) return calculateScore(b) - calculateScore(a); );
function canMakeWord(word, availableLetters) { var letterCount = {}; for (var i = 0; i < availableLetters.length; i++) for (var i = 0; i < word.length; i++) var ch = word[i]; if (!letterCount[ch]) return false; letterCount[ch]--; return true; } Step 6 – Scrabble Score Calculator var letterScores = a:1, e:1, i:1, o:1, u:1, l:1, n:1, s:1, t:1, r:1, d:2, g:2, b:3, c:3, m:3, p:3, f:4, h:4, v:4, w:4, y:4, k:5, j:8, x:8, q:10, z:10 ; function calculateScore(word) var score = 0; for (var i = 0; i < word.length; i++) score += letterScores[word[i]] return score;
var wordList = ["cat", "act", "bat", "tab", "rat", "art", "tar"]; function sortLetters(word) return word.split('').sort().join('');
function findWildcardMatches(pattern, lettersAvailable) // pattern = "c?t", lettersAvailable unused here but could restrict var matches = []; for (var i = 0; i < wordList.length; i++) if (matchesPattern(wordList[i], pattern)) matches.push(wordList[i]); return matches;
? represents any letter.
function matchesPattern(word, pattern) if (word.length !== pattern.length) return false; for (var i = 0; i < pattern.length; i++) if (pattern[i] !== '?' && pattern[i] !== word[i]) return false;
function isValidWord(word) return wordList.includes(word.toLowerCase());
return results;
return true;
// Display var output = ""; for (var i = 0; i < possibleWords.length; i++) output += possibleWords[i] + " (" + calculateScore(possibleWords[i]) + " pts)\n";
