简介
在这个实验中,我们将深入探索 JavaScript 编程的迷人世界。本实验旨在帮助你获得使用 JavaScript 解决编程问题的实践经验。你将学习如何使用埃拉托斯特尼筛法(Sieve of Eratosthenes algorithm)生成指定数字以内的质数。
在这个实验中,我们将深入探索 JavaScript 编程的迷人世界。本实验旨在帮助你获得使用 JavaScript 解决编程问题的实践经验。你将学习如何使用埃拉托斯特尼筛法(Sieve of Eratosthenes algorithm)生成指定数字以内的质数。
要使用埃拉托斯特尼筛法生成指定数字以内的质数,请遵循以下步骤:
node以开始练习编码。2到指定数字的数组。Array.prototype.filter()过滤掉能被从2到所提供数字的平方根之间的任何数字整除的值。以下是生成指定数字以内质数的 JavaScript 代码:
const generatePrimes = (num) => {
let arr = Array.from({ length: num - 1 }).map((x, i) => i + 2),
sqrt = Math.floor(Math.sqrt(num)),
numsTillSqrt = Array.from({ length: sqrt - 1 }).map((x, i) => i + 2);
numsTillSqrt.forEach(
(x) => (arr = arr.filter((y) => y % x !== 0 || y === x))
);
return arr;
};
你可以通过将所需数字作为参数传递来调用函数generatePrimes()。例如:
generatePrimes(10); // [2, 3, 5, 7]
恭喜你!你已经完成了“生成指定数字以内的质数”实验。你可以在 LabEx 中练习更多实验来提升你的技能。