diff --git a/arrays.js b/arrays.js index 37faed2..c02954d 100644 --- a/arrays.js +++ b/arrays.js @@ -15,7 +15,9 @@ Expected Output: */ // ✍️ Solve it here ✍️ - +let inventory = ["Apples", "Bread", "Milk", "Eggs"]; + let first = inventory.shift(); + console.log(inventory); @@ -39,12 +41,15 @@ Output: "Ali is present." */ // ✍️ Write your function here ✍️ - - - - - - +let students = ["Ali", "Fatima", "Hassan", "Layla"]; +function isPresent(name) { + if (students.includes(name)) { + return name + " is present."; + } else { + return name + " is absent."; + } +} +console.log(isPresent("Ali")); /* Task 3: Top Scorers Leaderboard 🏆⚽ @@ -66,11 +71,30 @@ Output: Sorted leaderboard with updated scores */ // ✍️ Write your functions here ✍️ - - - - - +let topScorers = [ + { name: "Messi", score: 5 }, + { name: "Ronaldo", score: 3 }, + { name: "Neymar", score: 4 } +]; + +function updateScore(playerName, scoreToAdd) { + let player = topScorers.find(p => p.name === playerName); + if (player) { + player.score += scoreToAdd; + } else { + topScorers.push({ name: playerName, score: scoreToAdd }); + } +} + +function printLeaderboard() { + topScorers.sort((a, b) => b.score - a.score); + console.log("Leaderboard:"); + topScorers.forEach(player => { + console.log(`${player.name}: ${player.score}`); + }); +} +updateScore("Ronaldo", 2); +printLeaderboard(); /* @@ -89,6 +113,15 @@ Here’s the plan: - If it exists, return "Clue [name] found!" - If it doesn’t exist, return "Clue [name] is missing, search again!" + let clues = ["Map", "Compass", "Key", "Shovel"]; +function findClue(clues, name) { + if (clues.includes(name)) { + return `Clue ${name} found!`; + } else { + return `Clue ${name} is missing, search again!`; + } +} console.log(findClue(clues, "Map")); + 2. **Decipher Hidden Messages**: - Each clue is a scrambled message stored in the `clueMessages` array. - Write a function called `decipherMessage` that uses a loop to reverse each message in the `clueMessages` array and return the updated array. diff --git a/callbacks.js b/callbacks.js index 3fadb3f..0f19112 100644 --- a/callbacks.js +++ b/callbacks.js @@ -17,6 +17,16 @@ Expected Output: */ // ✍️ Solve it here ✍️ +let sendMessage = (name, callback) => { + callback(name); +}; + +let theCallBackFunction = (name) => { + console.log(`Welcome, ${name}!`); +}; + +sendMessage("Amina", theCallBackFunction); + @@ -47,29 +57,20 @@ Expected Output: */ // ✍️ Solve it here ✍️ - - - - -/* -STRETCH: Task 3: Quiz Evaluator 📚📚📚📚 - -You are building a quiz system. Write a function called `evaluateAnswer` that: -1. Takes a question, a correct answer, and a callback function as arguments. -2. The callback function should compare the user's answer with the correct answer and log whether the answer is correct or not. - -Steps: -- Create the callback function to evaluate: - - If the user's answer matches the correct answer, log: "Correct!" - - Otherwise, log: "Incorrect. The correct answer is [correctAnswer]." - -Example: -Input: -evaluateAnswer("What is 5 + 5?", "10", TheCallBackFunction); - -Expected Output: -- If user's input is "10": "Correct!" -- If user's input is "15": "Incorrect. The correct answer is 10." -*/ +let checkTemperature = (temperature, callback) => { + callback(temperature); +}; +let temperatureEvaluator = (temperature) => { + if (temperature > 30) { + console.log(`${temperature}°C is Hot.`); + } else if (temperature >= 15 && temperature <= 30) { + console.log(`${temperature}°C is Warm.`); + } else { + console.log(`${temperature}°C is Cold.`); + } +}; + +checkTemperature(35, temperatureEvaluator); // ✍️ Solve it here ✍️ + diff --git a/index.html b/index.html index 1104b64..1201b94 100644 --- a/index.html +++ b/index.html @@ -3,6 +3,9 @@
Week 5 Assignment