From 7081ed70985580f26c8cec3fe975e9de08215480 Mon Sep 17 00:00:00 2001 From: A-M98 Date: Mon, 10 Mar 2025 13:28:35 +0300 Subject: [PATCH] Ahmed Al-Mohammed Dana AL-Dulijan --- src/challenge.ts | 13 +++++++++---- src/filtering.ts | 7 ++++--- src/mapping+filtering.ts | 12 ++++++++---- src/mapping.ts | 8 ++++---- 4 files changed, 25 insertions(+), 15 deletions(-) diff --git a/src/challenge.ts b/src/challenge.ts index 63a7766..1902d91 100644 --- a/src/challenge.ts +++ b/src/challenge.ts @@ -9,6 +9,9 @@ // logger([1, 2, 3, "one", "two", "three"]); function logger(array: T[]): void { // write your code here... + array.forEach((element) => { + console.log(element); + }); } // `toCelsius` function that: @@ -19,8 +22,8 @@ function logger(array: T[]): void { // toCelsius([32, 68, 100, 212]); // => [0, 20, 37.7778, 100] function toCelsius(temperatures: number[]): number[] { // write your code here... - - return []; // replace empty array with what you see is fit + const Celsius: number[] = temperatures.map((n) => (n - 32) * (5 / 9)); + return Celsius; // replace empty array with what you see is fit } // `hottestDays` function that: @@ -32,8 +35,8 @@ function toCelsius(temperatures: number[]): number[] { // hottestDays([80, 90, 100, 110], 95); // => [100, 110] function hottestDays(temperatures: number[], threshold: number): number[] { // write your code here... - - return []; // replace empty array with what you see is fit + const hottest: number[] = temperatures.filter((n) => n > threshold); + return hottest; // replace empty array with what you see is fit } // `logHottestDays` function that: @@ -42,6 +45,8 @@ function hottestDays(temperatures: number[], threshold: number): number[] { // - Log temperatures that exceed the threshold to the console IN DEGREES CELSIUS (hint: you can combine all previous functions) function logHottestDays(temperatures: number[], threshold: number): void { // write your code here... + const temp: number[] = toCelsius(temperatures); + logger(temp); } export { logger, toCelsius, hottestDays, logHottestDays }; diff --git a/src/filtering.ts b/src/filtering.ts index 49411d8..d58b98e 100644 --- a/src/filtering.ts +++ b/src/filtering.ts @@ -11,8 +11,9 @@ const numbers = [10, 13, 20, 25, 38, 35, 40]; // greaterThanTwentyFive(numbers); // => [38, 35, 40] function greaterThanTwentyFive(numbers: number[]): number[] { // write your code here... + const greaterThan: number[] = numbers.filter((number) => number >= 25); - return []; // replace empty array with what you see is fit + return greaterThan; // replace empty array with what you see is fit } // `divisibleByFive` function that: @@ -22,8 +23,8 @@ function greaterThanTwentyFive(numbers: number[]): number[] { // divisibleByFive(numbers); // => [10, 20, 25, 35, 40] function divisibleByFive(numbers: number[]): number[] { // write your code here... - - return []; // replace empty array with what you see is fit + const divisible: number[] = numbers.filter((number) => number % 5 === 0); + return divisible; // replace empty array with what you see is fit } export { greaterThanTwentyFive, divisibleByFive }; diff --git a/src/mapping+filtering.ts b/src/mapping+filtering.ts index 269ad83..1b4e772 100644 --- a/src/mapping+filtering.ts +++ b/src/mapping+filtering.ts @@ -11,8 +11,10 @@ const numbers = [10, 13, 20, 25, 38, 35, 40]; // filteredAndSquared(numbers); // => [400, 625, 1444, 1225, 1600] function filteredAndSquared(numbers: number[]): number[] { // write your code here... - - return []; // replace empty array with what you see is fit + const filterandsquare: number[] = numbers + .filter((n) => n >= 20) + .map((n) => n * n); + return filterandsquare; // replace empty array with what you see is fit } // `filteredAndTripled` function that: @@ -22,8 +24,10 @@ function filteredAndSquared(numbers: number[]): number[] { // filteredAndTripled(numbers); // => [30, 60, 75, 105, 120] function filteredAndTripled(numbers: number[]): number[] { // write your code here... - - return []; // replace empty array with what you see is fit + const filterandtriple: number[] = numbers + .filter((n) => n % 5 === 0) + .map((n) => n * 3); + return filterandtriple; // replace empty array with what you see is fit } export { filteredAndSquared, filteredAndTripled }; diff --git a/src/mapping.ts b/src/mapping.ts index 6f18eef..df6ab11 100644 --- a/src/mapping.ts +++ b/src/mapping.ts @@ -11,8 +11,8 @@ const numbers = [10, 13, 20, 25, 38, 35, 40]; // squaredNumbers(numbers); // => [100, 169, 400, 625, 1444, 1225, 1600] function squaredNumbers(numbers: number[]): number[] { // write your code here... - - return []; // replace empty array with what you see is fit + const squared: number[] = numbers.map((number) => number * number); + return squared; // replace empty array with what you see is fit } // `doubledNumbers` function that: @@ -22,8 +22,8 @@ function squaredNumbers(numbers: number[]): number[] { // doubledNumbers(numbers); // => [20, 26, 40, 50, 76, 70, 80] function doubledNumbers(numbers: number[]): number[] { // write your code here... - - return []; // replace empty array with what you see is fit + const squared: number[] = numbers.map((number) => number * 2); + return squared; // replace empty array with what you see is fit } export { squaredNumbers, doubledNumbers };