From 81703c9185a550da7c20c9544cd0e29e650d5ea0 Mon Sep 17 00:00:00 2001 From: Eva Date: Wed, 29 Nov 2017 21:32:25 -0800 Subject: [PATCH 1/2] completed code challenges --- challenges/bottles-of-beer-song.js | 10 ++++++++ challenges/palindrome-detector.js | 15 +++++++++++ challenges/primes.js | 27 ++++++++++++++++++++ challenges/shakespearian-insult-generator.js | 22 ++++++++++++++-- 4 files changed, 72 insertions(+), 2 deletions(-) diff --git a/challenges/bottles-of-beer-song.js b/challenges/bottles-of-beer-song.js index 8dbd822..fd1e75d 100644 --- a/challenges/bottles-of-beer-song.js +++ b/challenges/bottles-of-beer-song.js @@ -22,3 +22,13 @@ */ // YOUR CODE HERE +function numberOfBottles(numBottles) { + + for (let num = numBottles; num > 0; num -= 1) { + console.log(num + " bottles of beer on the wall,"); + console.log(num + " bottles of beer"); + console.log("Take one down and pass it around,"); + console.log(num - 1 + " bottles of beer on the wall,"); + console.log(); + } +} diff --git a/challenges/palindrome-detector.js b/challenges/palindrome-detector.js index 86e0a62..840a8d9 100644 --- a/challenges/palindrome-detector.js +++ b/challenges/palindrome-detector.js @@ -21,3 +21,18 @@ */ // YOUR CODE HERE + +function isPalindrome(str) { + var newStr = str.replace(/[^\w\s]/gi, '').replace(/ /g,'').toLowerCase(); //remove punctuation and spaces, convert to lowercas + let revString = "" + for (var i = newStr.length - 1; i >= 0; i-= 1 ) { + revString += newStr[i]; + } + + if (revString == newStr) { + console.log(str + " is a palindrome"); + } else { + console.log(str + " is not a palindrome"); + } + return newStr +}; diff --git a/challenges/primes.js b/challenges/primes.js index d95fd9e..ca5efd8 100644 --- a/challenges/primes.js +++ b/challenges/primes.js @@ -10,3 +10,30 @@ */ // YOUR CODE HERE +function isPrime(num) { + if (num < 2) { + return false + } else { + for (var i = 2; i < num; i++) { + if (num % i === 0) { + return false + } + } + return true + }; +}; + +function prime(max) { + var primeArr = []; + var number = 2; + +while (primeArr.length < max) { //loop runs until the length of the array of prime number is equal to max + + let isItAPrime = isPrime(number); + if (isItAPrime) { + primeArr.push(number); + } + number += 1; + } +return primeArr +}; diff --git a/challenges/shakespearian-insult-generator.js b/challenges/shakespearian-insult-generator.js index 15b79f0..7ed4cf6 100644 --- a/challenges/shakespearian-insult-generator.js +++ b/challenges/shakespearian-insult-generator.js @@ -11,9 +11,27 @@ - Create a browser interface, using some combination of `prompt`, `alert`, and/or DOM manipulation. */ +// YOUR CODE HERE -var first_word = ["yeasty", "weedy", "wayward", "warped", "villainous", "venomed", "vain", "unmuzzled", "tottering", "surly", "spongy", "spleeny", "saucy", "ruttish", "roguish", "reeky", "rank", "qualling", "puny", "puking", "pribbling", "paunchy", "mewling", "mangled", "mammering", "lumpish", "loggerheaded", "jarring", "infectious", "impertinent", "gorbellied", "goatish", "gleeking", "frothy", "froward", "fobbing", "fawning", "errant", "droning", "dissembling", "dankish", "currish", "craven", "clouted", "cockered", "churlish", "bootless", "beslubbering", "bawdy", "artless"]; +var first_word = ["yeasty", "weedy", "wayward", "warped", "villainous", "venomed", "vain", "unmuzzled", "tottering", "surly", "spongy", "spleeny", "saucy", "ruttish", "roguish", "reeky", "rank", "qualling", "puny", "puking", "pribbling", "paunchy", "mewling", "mangled", "mammering", "lumpish", "loggerheaded", "jarring", "infectious", "impertinent", "gorbellied", "goatish", "gleeking", "frothy", "froward", "fobbing", "fawning", "errant", "droning", "dissembling", "dankish", "currish", "craven", "clouted", "cockered", "churlish", "bootless", "beslubbering", "bawdy", "artless"]; var second_word = ["weather-bitten", "unchin-snouted", "toad-spotted", "tickle-brained", "tardy-gaited", "swag-bellied", "spur-galled", "sheep-biting", "shard-borne", "rump-fed", "rude-growing", "rough-hewn", "reeling-ripe", "pox-marked", "pottle-deep", "plume-plucked", "onion-eyed", "motley-minded", "milk-livered", "knotty-pated", "ill-nurtured", "ill-breeding", "idle-headed", "hell-hated", "hedge-born", "hasty-witted", "half-faced", "guts-griping", "full-gorged", "fool-born", "folly-fallen", "fly-bitten", "flap-mouthed", "fen-sucked", "fat-kidneyed", "elf-skinned", "earth-vexing", "dread-bolted", "doghearted", "dizzy-eyed", "dismal-dreaming", "crook-pated", "common-kissing", "clay-brained", "clapper-clawed", "boil-brained", "beetle-headed", "beef-witted", "bat-fowling", "base-court"]; var third_word = ["wagtail", "whey-face", "vassal", "varlet", "strumpet", "skainsmate", "scut", "ratsbane", "pumpion", "puttock", "pignut", "pigeon-egg", "nut-hook", "mumble-news", "moldwarp", "miscreant", "minnow", "measle", "mammet", "malt-worm", "maggot-pie", "lout", "lewdster", "joithead", "hugger-mugger", "horn-beast", "hedge-pig", "harpy", "haggard", "gudgeon", "giglet", "fustilarian", "foot-licker", "flirt-gill", "flax-wench", "flap-dragon", "dewberry", "death-token", "codpiece", "coxcomb", "clotpole", "clack-dish", "canker-blossom", "bum-bailey", "bugbear", "boar-pig", "bladder", "barnacle", "baggage", "apple-john"]; +} -// YOUR CODE HERE +function generateRandom(currentArr) { //passes the current array through the function and generates a random word from that array + var word = currentArr[Math.floor(Math.random() * currentArr.length)] + return word; +} + +function generateInsult (numOfWords) { +var selectedInsults = ["Why you, "] +var wordArray = [first_word, second_word, third_word] + +for (var i = 0; i < wordArray.length; i++) { + var currentInsult = generateRandom(wordArray[i]); + selectedInsults.push(currentInsult); +} + +return selectedInsults.join(" ") + +} From cd6dbfd507c0374582cca5340ed290696d080ba4 Mon Sep 17 00:00:00 2001 From: Eva Date: Wed, 29 Nov 2017 21:36:19 -0800 Subject: [PATCH 2/2] code revision to return true and false --- challenges/palindrome-detector.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/challenges/palindrome-detector.js b/challenges/palindrome-detector.js index 840a8d9..a5158e2 100644 --- a/challenges/palindrome-detector.js +++ b/challenges/palindrome-detector.js @@ -30,9 +30,8 @@ function isPalindrome(str) { } if (revString == newStr) { - console.log(str + " is a palindrome"); + return true; } else { - console.log(str + " is not a palindrome"); + return false; } - return newStr };