export const ex4 = `use compose to run the following three commands
1. map over the numbers and square each number
2. use filter keep numbers divisible by 8
3. use reduce to count the resulting numbers
`;
export const exercise4 = () => {
const numbers = [1, 2, 4, 8, 16, 32];
return pipe(
numbers,
Effect.succeed,
Effect.map(
(arr) =>
arr
.map((x) => x * x) // 1. square each number
.filter((x) => x % 8 === 0) // 2. keep numbers divisible by 8
.reduce((acc, cur) => acc + 1, 0) // 3. count the numbers (not sum them)
),
Effect.runSync
);
};
export const ex4 = `use compose to run the following three commands
1. map over the numbers and square each number
2. use filter keep numbers divisible by 8
3. use reduce to count the resulting numbers
`;
export const exercise4 = () => {
const numbers = [1, 2, 4, 8, 16, 32];
return pipe(
numbers,
Effect.succeed,
Effect.map(
(arr) =>
arr
.map((x) => x * x) // 1. square each number
.filter((x) => x % 8 === 0) // 2. keep numbers divisible by 8
.reduce((acc, cur) => acc + 1, 0) // 3. count the numbers (not sum them)
),
Effect.runSync
);
};