Skip to content
This repository was archived by the owner on Jan 14, 2024. It is now read-only.
9 changes: 9 additions & 0 deletions exercises/B-hello-world/exercise.js
Original file line number Diff line number Diff line change
@@ -1 +1,10 @@
console.log("Hello world");
let greeting ="HEY!";
console.log(greeting);
console.log("Hi, A newbie at JavaScript!");
console.log("Hi, A newbie at JavaScript!");
console.log("Hi, A newbie at JavaScript!");
console.log("Hi, A newbie at JavaScript!");
console.log('Hi, a newbie at JavaACript!');
console.log(1);

5 changes: 4 additions & 1 deletion exercises/C-variables/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
// Start by creating a variable `greeting`

var greeting = `Hello guys! Welcome to JavaScript!`;
console.log(greeting);
console.log(greeting);
console.log(greeting);

1 change: 1 addition & 0 deletions exercises/D-strings/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ var message = "This is a string";
var messageType = typeof message;

console.log(messageType); // logs 'string'

```

## Exercise
Expand Down
5 changes: 4 additions & 1 deletion exercises/D-strings/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
// Start by creating a variable `message`

var message = "Read the instruction";
var messageType = typeof message;
console.log(message);
console.log(messageType);
console.log("This is a " + messageType);
7 changes: 7 additions & 0 deletions exercises/E-strings-concatenation/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,21 @@ var name = "Daniel";
var greeting = greetingStart + name;

console.log(greeting); // Logs "Hello, my name is Daniel"


```

## Exercise

- Write a program that logs a message with a greeting and your name

var greeting = "Hello! Welcome ";
var name = "Daniel";
var greetingSentence = geeting + name;

## Expected result

```

Hello, my name is Daniel
```
7 changes: 6 additions & 1 deletion exercises/E-strings-concatenation/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
// Start by creating a variable `message`

var message = "Hello, This is Farnoosh!";
console.log(message);
var myName = "Farnoosh";
var myNameLenght = myName.length;
console.log(myNameLenght);
var messageOne = message + " My name is " + myNameLenght + " characters long!";
console.log(messageOne);
5 changes: 4 additions & 1 deletion exercises/F-strings-methods/exercise.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
// Start by creating a variable `message`

const message = "Read the instruction!";
let messageType = typeof message;
console.log(message);
console.log(messageType);
console.log("This is a " + messageType);
9 changes: 7 additions & 2 deletions exercises/F-strings-methods/exercise2.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
const name = " Daniel ";
const message = "Hello, This is Farnoosh!";
const myName = "Farnoosh";
let myNameTrim = myName.trim();
let myNameLenght = myName.length;

console.log(message);
let messageTwo = message + " My name is " + myNameLenght + " characters long!";
console.log(messageTwo);
console.log(myNameLenght);
13 changes: 13 additions & 0 deletions exercises/G-numbers/exercise.js
Original file line number Diff line number Diff line change
@@ -1 +1,14 @@
// Start by creating a variables `numberOfStudents` and `numberOfMentors`
var numberOfStudents = 15;
var numberOfMentors = 8;

students = numberOfStudents;
mentors = numberOfMentors;

var messageStudent = "Number of students: " + students;
var MessageMentors = "Number of mentors: " + mentors;
var totalInClass = students + mentors;
var messageTotal = "Total number of students and mentors: " + totalInClass;
console.log(messageStudent);
console.log(MessageMentors);
console.log(messageTotal);
13 changes: 13 additions & 0 deletions exercises/I-floats/exercise.js
Original file line number Diff line number Diff line change
@@ -1,2 +1,15 @@
var numberOfStudents = 15;
var numberOfMentors = 8;
students = numberOfStudents;
mentors = numberOfMentors;

var totalInClass = students + mentors;
let percentageOfStudent = (students / totalInClass) * 100;
let percentageOfStudentRound = Math.round(percentageOfStudent);

console.log("Percentage students: " + percentageOfStudentRound);

let percentageOfMentorsRound = Math.round((mentors / totalInClass) * 100);
let messagePercentageOfMentors =
"Percentage Mentors: " + percentageOfMentorsRound;
console.log(messagePercentageOfMentors);
3 changes: 2 additions & 1 deletion exercises/J-functions/exercise.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
function halve(number) {
// complete the function here
return number / 2;
}

var result = halve(12);

console.log(result);
console.log(halve(82));
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;
}

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

// Assign the result of calling the function the variable `result`
var result = multiply(3, 4);
let result = multiply(3, 4);

console.log(result);
6 changes: 4 additions & 2 deletions exercises/K-functions-parameters/exercise2.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
// Declare your function first
function divide(a, b) {
return a / b;
}

var result = divide(3, 4);
let result = divide(3, 4);

console.log(result);
10 changes: 7 additions & 3 deletions exercises/K-functions-parameters/exercise3.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
// Write your function here

var greeting = createGreeting("Daniel");
function createGreeting(name) {
const greet = "Hello, my name is ";

return greet + name;

}

let greeting = createGreeting("Daniel");
console.log(greeting);
6 changes: 4 additions & 2 deletions exercises/K-functions-parameters/exercise4.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
// 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);
4 changes: 3 additions & 1 deletion exercises/K-functions-parameters/exercise5.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// Declare your function here
function createLongGreeting(name, age) {
return "Hello, my name is " + name + " and I'm " + age + "years old";
}

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

Expand Down
13 changes: 13 additions & 0 deletions exercises/L-functions-nested/exercise.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,16 @@ var mentor2 = "Irina";
var mentor3 = "Mimi";
var mentor4 = "Rob";
var mentor5 = "Yohannes";

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

function greetingMentors(names) {
return `HELLO ${namesUpperCase(names)}`;

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Good use of a string template!

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

function convertToUSD() {}
function convertToUSD(price) {
let priceInUSD = price * 1.4;
return "$" + priceInUSD;
}

/*
CURRENCY CONVERSION
Expand All @@ -15,7 +18,12 @@ 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(pound) {
let convertRate = 0.99 * 5.7 ;
let convertReal = pound * convertRate;
convertReal = convertReal.toFixed(2);
return convertReal;
}

/* ======= TESTS - DO NOT MODIFY =====
There are some Tests in this file that will help you work out if your code is working.
Expand Down
14 changes: 9 additions & 5 deletions extra/2-piping.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,22 +16,26 @@
the final result to the variable goodCode
*/

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

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

function multiply() {
function format(price) {

return "£" + price;
}

function format() {

}


const startingValue = 2;

// Why can this code be seen as bad practice? Comment your answer.
let badCode =
let badCode =

/* BETTER PRACTICE */

Expand Down
12 changes: 6 additions & 6 deletions mandatory/1-syntax-errors.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
// 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";

function introduceMe(name, age) {
return "Hello, my name is " + name + " and I am " + age + " years old";
}
function getTotal(a, b) {
total = a ++ b;
const total = a + b;

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

/*
Expand Down
7 changes: 3 additions & 4 deletions mandatory/2-logic-error.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
// 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();
return word.length;
}

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

/*
Expand Down
8 changes: 5 additions & 3 deletions mandatory/3-function-output.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
// Add comments to explain what this function does. You're meant to use Google!
//The Math.random() in this function returns a random number between 0 up to 10;
function getRandomNumber() {
return Math.random() * 10;
}

// Add comments to explain what this function does. You're meant to use Google!

// The concat() in this function, joins two strings as a new string;
function combine2Words(word1, word2) {
return word1.concat(word2);
return word1.concat(" ", word2);
}

function concatenate(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.
return firstWord.concat(" ", secondWord, " ", thirdWord);
}

/*
Expand Down
16 changes: 14 additions & 2 deletions mandatory/4-tax.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@
Sales tax is 20% of the price of the product.
*/

function calculateSalesTax() {}
function calculateSalesTax(priceOfProduct) {
const salesTax = 0.2 * priceOfProduct;

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, well done

return priceOfProduct + salesTax;
}

/*
CURRENCY FORMATTING
Expand All @@ -17,7 +20,12 @@ function calculateSalesTax() {}
Remember that the prices must include the sales tax (hint: you already wrote a function for this!)
*/

function addTaxAndFormatCurrency() {}
function addTaxAndFormatCurrency(priceOfProduct) {
const newLocal = calculateSalesTax(priceOfProduct).toFixed(2);
let vat = newLocal;
return `£${vat}`;
}
console.log(addTaxAndFormatCurrency(17.5));

/*
===================================================
Expand Down Expand Up @@ -53,3 +61,7 @@ test("addTaxAndFormatCurrency for £17.50", () => {
test("addTaxAndFormatCurrency for £34", () => {
expect(addTaxAndFormatCurrency(34)).toEqual("£40.80");
});
function newFunction() {
console.log(addTaxAndFormatCurrency(15));
}

12 changes: 9 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,21 @@
"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"
]
}
]
},
Expand Down