Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions problems/code1.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
function f() {
return "hello";
}
var x = f();
var y = f();
var z = x + y;
console.log(z);
7 changes: 7 additions & 0 deletions problems/code1.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
function f() {
return "hello";
}
var x = f();
var y = f();
var z = x + y;
console.log(z);
21 changes: 17 additions & 4 deletions problems/problem1.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,31 @@ var assert = require('assert');

// we need 5 test cases. I provided 1 input
let inputs = [
""
"",
"abc",
"123",
"monkey",
"bird"


]

let outputs = [

undefined,
"a",
"1",
"m",
"b"
]

// Make this function return the first letter of the string that is passed to it. If the string does not have a first letter, return undefined
function f(str) {

if (str[0] === undefined) {return undefined;
}
return str[0];
}



function runTest(i) {
var expected = outputs[i];
var actual = f(inputs[i]);
Expand Down
20 changes: 19 additions & 1 deletion problems/problem10.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,20 @@ var assert = require('assert');

// we need 5 test cases.
let inputs = [
"hello world",
"monster truck",
"ooga booga chattanooga",
"your mom dot com",
"yo wassup"

]

let outputs = [
"Hello World",
"Monster Truck",
"Ooga Booga Chattanooga",
"Your Mom Dot Com",
"Yo Wassup"

]

Expand All @@ -16,9 +26,17 @@ f("hello world"); // Hello World
f("ALL YOUR BASE ARE BELONG"); // All Your Base Are Belong

*/
newArr = str.split(" ");

function f(str) {

for ( var i = 0; i <= newArr[i].length; i++) {
newArr[i].charAt(0).toUpperCase();
} return newArr[i];
newArr[i].join(" ");
console.log(newArr);
}
str = newArr


function runTest(i) {
if(i > inputs.length) throw new Error("You do not have enough test cases");
Expand Down
2 changes: 1 addition & 1 deletion problems/problem11.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,5 @@ runTest(0);
runTest(1);
runTest(2);
runTest(3);
runTest(4);
runTest(4);g

33 changes: 28 additions & 5 deletions problems/problem12.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
var assert = require('assert');

// we need 5 test cases.
let inputs = [
let inputs = [ [[1,2,3,4,5],[9,8,3,6]],
[[1,3,4,5,6][1,3,4,5,8,6]],
[["boat","bus","tree"], [["green","dog,","boat"]]],
[]
,

]

let outputs = [
let outputs = [[1,2,4,5,8,9,6],

]

Expand All @@ -19,14 +23,33 @@ uniqueElements([0,1,2,3], [1,3,4,5]); // [0,4,5]
uniqueElements([1,2,3], [1,2,3]); // []
uniqueElements(2,3); // undefined, not arrays
*/
function f(arr1, arr2) {
var newArr =[];

function f(arr1) {

}
var arr1 = arr[0];
var arr2 = arr[1];
for (var i =0; i < arr1.length; i++) {
var inArray2 = false;
var array1Element = arr1[i];
for(var j = 0; j < arr2.length; j++) {
var array2Element = arr2[j];
if (array1Element == array2Element) inArray2 = true;
}
if (!inArray2 {
ret.push(arr1[i]);

}

}
return Array1
}

console.log(newArr);
function runTest(i) {
if(i > inputs.length) throw new Error("You do not have enough test cases");
var expected = outputs[i];
var actual = f(inputs[i]);
var actual = f(...inputs[i]);
assert.deepEqual(actual, expected);
}

Expand Down
62 changes: 62 additions & 0 deletions problems/problem12a.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
var assert = require('assert');

// we need 5 test cases.
let inputs = [ [[1,2,3,4,5],[9,8,3,6]],
[[1,3,4,5,6][1,3,4,5,8,6]],
[["boat","bus","tree"], [["green","dog,","boat"]]],
[]
,

]

let outputs = [[1,2,4,5,8,9,6],

]

/*
Make this function return the elements that are unique to array1 and array2.
If there are no unique elements return an empty array.
If the inputs are anything other than arrays, return undefined.
For example:

uniqueElements([0,1,2,3], [1,3,4,5]); // [0,4,5]
uniqueElements([1,2,3], [1,2,3]); // []
uniqueElements(2,3); // undefined, not arrays
*/
var newArr =[];
function member () {}

function f(arr1) {

var arr1 = arr[0];
var arr2 = arr[1];
for (var i =0; i < arr1.length; i++) {
var inArray2 = false;
var array1Element = arr1[i];
for(var j = 0; j < arr2.length; j++) {
var array2Element = arr2[j];
if (array1Element == array2Element) inArray2 = true;
}
if (!inArray2) {return
ret.push(arr1[i]);

}

}
return Array1
}

console.log(newArr);
function runTest(i) {
if(i > inputs.length) throw new Error("You do not have enough test cases");
var expected = outputs[i];
var actual = f(...inputs[i]);
assert.deepEqual(actual, expected);
}

runTest(0);
runTest(1);
runTest(2);
runTest(3);
runTest(4);

22 changes: 19 additions & 3 deletions problems/problem13.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,20 @@
var assert = require('assert');

// we need 5 test cases.
let inputs = [
let inputs = ["racecar",
"oogoo",
"zangazanga",
"boottoob",
"oke2doke343"

]

let outputs = [
true,
true,
false,
true,
false

]

Expand All @@ -16,16 +25,23 @@ RADAR -> Yes
JAVASCRIPT -> No
*/
function f(str) {
var cleanstr = str.replace(/[^a-z/]/ig, "").toLowerCase();


var invertedstr = cleanstr.split("").reverse().join("");

return cleanstr === invertedstr;

}

function runTest(i) {
if(i > inputs.length) throw new Error("You do not have enough test cases");

var expected = outputs[i];
var actual = f(inputs[i]);
assert.deepEqual(actual, expected);
assert.deepEqual(expected, actual);
}


runTest(0);
runTest(1);
runTest(2);
Expand Down
19 changes: 15 additions & 4 deletions problems/problem2.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,29 @@
var assert = require('assert');

// we need 5 test cases.
let inputs = [
let inputs = ["",
"baby",
"dingo",
"night",
"cheese"

]

let outputs = [
let outputs = [undefined,
"y",
"o",
"t",
"e"

]

// Make this function return the last letter of the string that is passed to it. If the string does not have a last letter, return undefined
function f(str) {

function f(str) { if (str == undefined) {return undefined;
}
return str[str.length-1];
}



function runTest(i) {
var expected = outputs[i];
Expand Down
24 changes: 20 additions & 4 deletions problems/problem3.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,40 @@ var assert = require('assert');
// we need 7 test cases. I've provided 2.
let inputs = [
[2, 4],
[-3, 3]
]
[-3, 3],
[2,6],
[4,8],
[2,3],
[6,2],
[7,1]
]

let outputs = [
6,
0
0,
12,
6,
undefined,
undefined,
7

]

/*
Make this function return the sum of the two numbers that are passed to it. If one of the numbers is not passed, or if anything other than numbers are passed, return undefined.
*/
function f(x, y) {
if (isNAN(x) || isNAN(y)) { return undefined;
}

let sum = x + y;
if

}

function runTest(i) {
var expected = outputs[i];
var actual = f(inputs[i]);
var actual = f(...inputs[i]);
assert.deepEqual(actual, expected);
}

Expand Down
27 changes: 22 additions & 5 deletions problems/problem4.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,32 @@

var assert = require('assert');

// we need 8 test cases. I've provided the first 2
let inputs = [
["hello", 4],
["", 2]
["", 2],
["wow", 2],
["there", 2],
["some", 2],
["kind", 1],
["of", 1]

]

let outputs = [
"o",
undefined
undefined,
"w",
"e",
"m",
"i",
"f"
]





/*
Make this function return the letter at the specified position in the string. If no such letter exists, it should return undefined.

Expand All @@ -20,9 +36,10 @@ f("", 4); // undefined
f("abc", 0); // a

*/
function f(str, index) {

}
function f(str, index) {
let letter = str[index];
return letter;
}

function runTest(i) {
var expected = outputs[i];
Expand Down
Loading