Skip to content
This repository was archived by the owner on Jan 14, 2024. It is now read-only.
Closed
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
2 changes: 1 addition & 1 deletion exercises/B-hello-world/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Inside of `exercise.js` there's a line of code that will print "Hello world!".
### 1. Run the program

- Open a terminal window
- Change directory to this folder (`cd B-hello-world`)
- Change directory to this folder (`cd exercises/B-hello-world`)
- Run the program using node (`node exercise.js`)

### 2. Experiment
Expand Down
5 changes: 4 additions & 1 deletion exercises/B-hello-world/exercise.js
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
console.log("Hello world");
console.log(Hello world);

console.log (7);

4 changes: 4 additions & 0 deletions exercises/C-variables/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
// Start by creating a variable `greeting`
var greeting = "Meow";
console.log(greeting);

console.log(greeting);

console.log(greeting);
5 changes: 3 additions & 2 deletions exercises/D-strings/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// Start by creating a variable `message`

console.log(message);
var message = "Meow";
var messageType = typeof message;
console.log(messageType);
4 changes: 3 additions & 1 deletion exercises/E-strings-concatenation/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
// Start by creating a variable `message`

var start = "Hi, name's";
var myName = "Deago";
var message = start + myName;
console.log(message);
4 changes: 3 additions & 1 deletion exercises/F-strings-methods/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
// Start by creating a variable `message`
var myName = "Deago";
var nameLength =`My name is Deago, and my name is ${myName.length} characters long`;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great use of concatinating string here ⭐

  1. Also you can use this to add your name.
  2. var -> const (or let if the value changes)
const nameLength = `My name is ${myName}, and my name is ${myName.length} characters long`;


console.log(message);
console.log(nameLength);
5 changes: 3 additions & 2 deletions exercises/F-strings-methods/exercise2.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
const name = " Daniel ";

const name = " Deago ";
nameLength = name.length
var message = `My name is ${name.trim()} and my name is ${name.trim().length} characters long`

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You could store the name.trim() in the variable:

let name = " Deago ";
name = name.trim();
nameLength = name.length;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You need to use semicolom

console.log(message);
7 changes: 7 additions & 0 deletions exercises/G-numbers/exercise.js
Original file line number Diff line number Diff line change
@@ -1 +1,8 @@
// Start by creating a variables `numberOfStudents` and `numberOfMentors`
let numberOfStudents = 15;
let numberOfMentors = 8;
let total = numberOfStudents + numberOfMentors;

console.log(numberOfStudents)
console.log(numberOfMentors)
console.log(total)
11 changes: 11 additions & 0 deletions exercises/I-floats/exercise.js
Original file line number Diff line number Diff line change
@@ -1,2 +1,13 @@
var numberOfStudents = 15;
var numberOfMentors = 8;

var total = numberOfStudents + numberOfMentors;

var perStu = (numberOfStudents / total) * 100;

var perMen = (numberOfMentors / total) * 100;

var perMenTo = Math.round(perMen)+"%";
var perStuTo = Math.round(perStu)+"%";

console.log(perMenTo, perStuTo)
4 changes: 2 additions & 2 deletions exercises/J-functions/exercise.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
function halve(number) {
// complete the function here
return number / 2

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

;

}

var result = halve(12);
var result = halve(512);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

console.log(halve(512));


console.log(result);
2 changes: 1 addition & 1 deletion exercises/J-functions/exercise2.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
function triple(number) {
// complete function here
return number * 3

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

;

}

var result = triple(12);
Expand Down
4 changes: 2 additions & 2 deletions exercises/K-functions-parameters/exercise.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// Complete the function so that it takes input parameters
function multiply() {
// Calculate the result of the function and return it
function multiply( a, b) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(a, b)

return a * b
}

// Assign the result of calling the function the variable `result`
Expand Down
4 changes: 3 additions & 1 deletion exercises/K-functions-parameters/exercise2.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// Declare your function first
function divide(a, b) {
return a / b;
}

var result = divide(3, 4);

Expand Down
4 changes: 4 additions & 0 deletions exercises/K-functions-parameters/exercise3.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
// Write your function here
function createGreeting (a) {
return "Hello, my name is " + a

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's better to use this format in general.

return `Hello, my name is ${a}`;

}


var greeting = createGreeting("Daniel");

Expand Down
5 changes: 5 additions & 0 deletions exercises/K-functions-parameters/exercise4.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
// Declare your function first
function add(a, b) {
return a + b;
}

// Call the function and assign to a variable `sum`
var sum = add(13, 124);


console.log(sum);
5 changes: 5 additions & 0 deletions exercises/K-functions-parameters/exercise5.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
// Declare your function here

function createLongGreeting(a, b) {
return "Hello, my name is " + a + " and I am "
+ b + " years old";
}

const greeting = createLongGreeting("Daniel", 30);

console.log(greeting);
15 changes: 15 additions & 0 deletions exercises/L-functions-nested/exercise.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,18 @@ var mentor2 = "Irina";
var mentor3 = "Mimi";
var mentor4 = "Rob";
var mentor5 = "Yohannes";

function names (b) {
return b.toUpperCase();
}

function message (b) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

message (b) -> message(b) (no space)

var name = names(b);
return "HELLO " + name;
}

console.log(message(mentor1));
console.log(message(mentor2));
console.log(message(mentor3));
console.log(message(mentor4));
console.log(message(mentor5));
17 changes: 14 additions & 3 deletions extra/1-currency-conversion.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,12 @@
Write a function that converts a price to USD (exchange rate is 1.4 $ to £)
*/

function convertToUSD() {}
function convertToUSD(num) {
let usd = 1.4
let result;
result = usd * num;
return result;
}

/*
CURRENCY CONVERSION
Expand All @@ -15,8 +20,14 @@ function convertToUSD() {}
They have also decided that they should add a 1% fee to all foreign transactions, which means you only convert 99% of the £ to BRL.
*/

function convertToBRL() {}

function convertToBRL(num) {
let brl = 5.7;
let result;
let fee;
fee = (1/100) * num;
result = (num - fee) * brl;
return result.toFixed(2);
}
/* ======= TESTS - DO NOT MODIFY =====
There are some Tests in this file that will help you work out if your code is working.

Expand Down
18 changes: 9 additions & 9 deletions extra/2-piping.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,26 +16,26 @@
the final result to the variable goodCode
*/

function add() {

function add(a, b) {
return a + b;
}

function multiply() {

function multiply(a, b) {
return a * b;
}

function format() {

function format(num) {
return '£' + num;
}

const startingValue = 2;

// Why can this code be seen as bad practice? Comment your answer.
let badCode =
// Why can this code be seen as bad practice? Comment your answer. It isn't clear what is doing what.
let badCode = ((startingValue, 10) * 2);

/* BETTER PRACTICE */

let goodCode =
let goodCode = format(multiply(add(startingValue, 10), 2));

/* ======= TESTS - DO NOT MODIFY =====
There are some Tests in this file that will help you work out if your code is working.
Expand Down
4 changes: 3 additions & 1 deletion extra/3-magic-8-ball.js
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
// This should log "The ball has shaken!"
// and return the answer.
function shakeBall() {
return 'The ball has shaken!';
//Write your code in here
}

Expand All @@ -59,6 +60,7 @@ function shakeBall() {
This function should expect to be called with any value which was returned by the shakeBall function.
*/
function checkAnswer(answer) {

//Write your code in here
}

Expand Down Expand Up @@ -89,7 +91,7 @@ test("whole magic 8 ball sequence", () => {
"very negative",
]);
});

format(multiply(add(startingValue, 10), 2));
test("magic 8 ball returns different values each time", () => {
const seenAnswers = new Set();
for (let i = 0; i < 10; ++i) {
Expand Down
13 changes: 8 additions & 5 deletions mandatory/1-syntax-errors.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
// There are syntax errors in this code - can you fix it to pass the tests?

function addNumbers(a b c) {
function addNumbers(a, b, c) {
return a + b + c;
}

function introduceMe(name, age)
return "Hello, my name is " + name "and I am " age + "years old";
var name = "Sonjide";

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not needed in the test.


function introduceMe(name, age) {
return "Hello, my name is " + name + " and I am " + age + " years old";
}

function getTotal(a, b) {
total = a ++ b;
total = a + b;

return "The total is total";
return "The total is " + total;
}

/*
Expand Down
12 changes: 7 additions & 5 deletions mandatory/2-logic-error.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
// The syntax for this function is valid but it has an error, find it and fix it.

function trimWord(word) {
return wordtrim();
return word.trim();
}

function getStringLength(word) {
return "word".length();
var sentence = "A wild sentence appeared!";
var word = "Turtles";

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your variable is declared correctly. I would recommend using let instead. Because if you work with someone else on a very big piece of code, another person might come up with the same variable name word and without knowing rewrite yours. It will then can then cause a problem.


function getStringLength(word, sentence) {
return (sentence, word).length;
}

function multiply(a, b, c) {
a * b * c;
return;
return a * b * c;;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there is an extra ;

}

/*
Expand Down
4 changes: 4 additions & 0 deletions mandatory/3-function-output.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
// Add comments to explain what this function does. You're meant to use Google!
function getRandomNumber() {
return Math.random() * 10;
// returns a random number between 1 <1, then multiplies that number by 10

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Deago, I think there is a typo. Did you mean from 0 to < 1?

}

// Add comments to explain what this function does. You're meant to use Google!
function combine2Words(word1, word2) {
return word1.concat(word2);
// creates a new array consisting of all elements within the object
}

function concatenate(firstWord, secondWord, thirdWord) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No new line needed at the begining of the function.

return firstWord +" "+ secondWord+" "+thirdWord;
// Write the body of this function to concatenate three words together.
// Look at the test case below to understand what this function is expected to return.
}
Expand Down
6 changes: 5 additions & 1 deletion mandatory/4-tax.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,12 @@ function calculateSalesTax() {}
Remember that the prices must include the sales tax (hint: you already wrote a function for this!)
*/

function addTaxAndFormatCurrency() {}



function addTaxAndFormatCurrency(x) {
return (x + 0.20*x).toFixed(2);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Deago, well done for fixing it. If you want to add a pound sign, think of it as a "string" that you add with + in your return formula.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It can be rewritten like this:

return (1.2 * x).toFixed(2);

}
/*
===================================================
======= TESTS - DO NOT MODIFY BELOW THIS LINE =====
Expand Down
14 changes: 10 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,27 @@
"url": "https://github.com/CodeYourFuture/JavaScript-Core-1-Coursework-Week1/issues"
},
"jest": {
"setupFilesAfterEnv": ["jest-extended"],
"setupFilesAfterEnv": [
"jest-extended"
],
"projects": [
{
"displayName": "mandatory",
"testMatch": ["<rootDir>/mandatory/*.js"]
"testMatch": [
"<rootDir>/mandatory/*.js"
]
},
{
"displayName": "extra",
"testMatch": ["<rootDir>/extra/*.js"]
"testMatch": [
"<rootDir>/extra/*.js"
]
}
]
},
"homepage": "https://github.com/CodeYourFuture/JavaScript-Core-1-Coursework-Week1#readme",
"devDependencies": {
"jest": "^26.6.3",
"jest-extended": "^0.11.5"
"jest-extended": "^1.2.0"
}
}
22 changes: 22 additions & 0 deletions test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// let num = 30;

// let fee;

// fee = (1/100) * num;

// let total;

// total = num - fee;

// console.log(total);

function convertToBRL(num) {
let brl = 5.7;
let result;
let fee;
fee = (1/100) * num;
result = (num - fee) * brl;
return result.toFixed(2);
}

console.log(convertToBRL(30));