varx,  //定义一个变量xr,  arr = [];  //定义一个空数组
for (x = 1; x < 100; x++) {arr.push(x);  //把1-100依次放到数组arr中
}
function get_primes(arr) {return arr.filter(function(val){  //用js的高阶函数filter把数组中不是素数的过滤掉for(let i=2;i<val;i++){if(val%i===0){return false;  //除了1和本身还有其他因素的,则返回false}}  return val>1;  //素数是正整数,而且1不是素数。})
}r = get_primes(arr);

方法二:

varx,  //定义一个变量xr,  arr = [];  //定义一个空数组
for (x = 1; x < 100; x++) {arr.push(x);  //把1-100依次放到数组arr中
}
function get_primes(arr) {return arr.filter((n)=>{if(n<3){return n > 1;}for(let i = 2;i<=Math.sqrt(n);i++){if(n % i === 0){return false;}}return true;});
}r = get_primes(arr);

方法三:

varx,  //定义一个变量xr,  arr = [];  //定义一个空数组
for (x = 1; x < 100; x++) {arr.push(x);  //把1-100依次放到数组arr中
}
function get_primes(arr) {return arr.filter(x => {let result = true;let end = Math.sqrt(x);let flag = 0;for (let i = 2; i <= end; i++) {if (x % i == 0) {flag = 1;break;}}if (x == 1) {//单独判断1是不是素数result = false;} else if (flag == 0) {//素数result = true;} else {//合数result = false;}return result;});
}r = get_primes(arr);

还有其他很多种办法可以实现去判断一个数组里的哪些元素是素数,大家也可以贴出自己的方法,来一起交流,一起进步,如有不对的地方,欢迎指教。

用JavaScript去找出一个数组里的所有素数(质数)相关推荐

  1. 典型的Top K算法_找出一个数组里面前K个最大数

    原文 典型的Top K算法_找出一个数组里面前K个最大数...或找出1亿个浮点数中最大的10000个...一个文本文件,找出前10个经常出现的词,但这次文件比较长,说是上亿行或十亿行,总之无法一次读入 ...

  2. 找出一个数组里面前K个最大数

    前言:今天早上来实验室,同桌问了我一个问题:找出一个数组里面前K个最大数的高效算法.最近正好在看数据结构和算法相关内容,便以己之力帮她思考了思考. 问题:找出一个数组里面前K个最大数. 解法: 1.第 ...

  3. 快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值

    我觉得写得很清晰,希望没有侵犯作者的著作权,原文地址http://blog.csdn.net/hackbuteer1/article/details/6699642 快速找出一个数组中的两个数字,让这 ...

  4. 找出一个数组中出现次数最多的那个元素

    Description 找出一个数组中出现次数最多的那个元素 Input 多组输入,请处理到文件结束 每组第一行输入一个整数n(不大于20) 第二行输入n个整数 Output 找出n个整数中出现次数最 ...

  5. 找出一个数组中唯一一个出现2次的数字

    找出一个数组中唯一一个出现2次的数字,不清楚是不是LeetCode上的题.本人默认是LeetCode上的题. 一个数组中有N个数字,但是只有一个数字出现了2次,其他的数字均不相同.这种问题一般应该采用 ...

  6. 如何快速找出一个数组中最大数和第二大数

    看到一道题是:快速找出一个数组中最大数和第二大数. 我之前学了一些数组排序,例如冒泡排序,简单选择排序等等,然后我就想可不可以利用冒泡排序来实现呢?之前写过冒泡排序实现从小到大的排列,那么可以改成从大 ...

  7. 快速找出一个数组中的最大数、第二大数

    http://blog.csdn.net/hackbuteer1/article/details/8035261#comments 快速找出一个数组中的最大数.第二大数 思路:如果当前元素大于最大数 ...

  8. c语言找出一个数组中出现次数最多的那个元素,c语言找出数组中出现次数最多地那个元素...

    matlab中如何找出不同维度矩阵出现次数最多的数组并记录其个数 首先是胞矩阵中的序列问题,不妨假设AA{1}是一个多行两列的数据,AA{2}同例.程序如下clcclearallAA{1}=[12;2 ...

  9. [基础题]1.快速找出一个数组中的最大数、第二大数。

    [基础题]1.快速找出一个数组中的最大数.第二大数. package HomeWork_10;public class Test_01 {public static void main(String[ ...

最新文章

  1. Python3中None用法
  2. Python-----多线程threading用法
  3. python编程标准_python编程规范
  4. 深度优先搜索知识总结
  5. java 析构函数_C++虚函数
  6. 计算机选配 注意事项,选择鼠标注意事项有哪些
  7. 使用ExtJS做一个用户的增删改查
  8. 消费级GPU、速度提升3000倍,微软FastNeRF实现200FPS
  9. 跨平台异步IO库 libuv 源代码接口详解
  10. atom python教程_对于新手来说 如何用atom搭建python的ide?
  11. 清除子节点、创建子节点函数
  12. updatepanel失效怎么办_[转]jquery与updatepanel二次失效问题解决方案-阿里云开发者社区...
  13. 想知道自己的物理内存地址都是如何分配的么?
  14. 我的世界服务器哪个有自动铺路,超简单命令方块铺路机 我的世界自动铺路机制作教程(附存档)...
  15. Java集合源码剖析——基于JDK1.8中LinkedList的实现原理
  16. 简述四代计算机网络及特点,简述四代电子计算机及主要特点
  17. 【poj3311】Hie with the Pie
  18. java生成二维码海报,面经解析
  19. 【工程化系列】逆向工程(反编译)
  20. 同一网段的概念以及计算

热门文章

  1. Java里面是先算乘除后算加减,JAVA基础之基本加减乘除计算
  2. 用户注册邮箱通知和短信通知详解(php)
  3. web开发与django认识 MVC和MVT的区别 路由的匹配
  4. fiddler不能抓苹果手机https的包终极解决方法 苹果手机记得需要去信任证书才行
  5. 接入华为游戏防沉迷,点击防沉迷弹窗后游戏闪退
  6. 学习笔记整理:网络应用技术-计算机网络概论
  7. 云服务器文件777权限,云服务器目录权限设置
  8. 回归预测 | MATLAB实现CNN-GRU(卷积门控循环单元)多输入单输出
  9. No speakable text present at Android Studio
  10. 金色丝线将瞬间一分为二 树状数组的使用