当前位置: 首页 > news >正文

零基础学算法-质数

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

质数的定义

质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个正因数的数)

大于1的自然数若不是素数,则称之为合数(也称为合成数)。

1000以内的质数

8ad064bec167e2d2b3aa4adf38c1970adc4.jpg

寻找质数算法

'List Primary Number

Sub Prime_Number()
Dim num&
Dim Arr(), i&
Dim pnFlag As Byte
Dim Count&
Dim wrapLine%
Dim m&, n&

Sheet6.[A10].CurrentRegion.ClearContents
num = 10000                       'Number Range
wrapLine = 10                     'Export Column
ReDim Arr(1 To num, 0 To 1)       'Record Number+Flag
For i = 1 To num
    Arr(i, 0) = i           'Orignal Input
    If i >= 2 Then pnFlag = IsPrimeNumber(i)
    Arr(i, 1) = pnFlag      '0=Normal;1=PrimeNumber
Next i
'Export Result to Worksheet
For i = 2 To num
    If Arr(i, 1) = 1 Then
        Count = Count + 1                 'Count
        m = Int(Count / wrapLine)         'Export Row
        n = Count Mod wrapLine            'Export Column
        If n = 0 Then n = wrapLine: m = m - 1   '0 status
        With Sheet6
            .Cells(10 + m, n) = Arr(i, 0)  'Prime Number
        End With
    End If
Next i
Debug.Print Timer
End Sub

'Calculate Prime Number
'0=Normal;1=Prime Number
Function IsPrimeNumber(ByVal n&) As Byte
Dim j&
j = 2
Do While j * j <= n      'prime number always<SQRT(n)
    If n Mod j = 0 Then
        IsPrimeNumber = 0
        Exit Function
    End If
    j = j + 1
Loop
IsPrimeNumber = 1
End Function

 

转载于:https://my.oschina.net/tedzheng/blog/3002322

相关文章:

  • 日本一名高龄男子开车冲上人行道 造成共7人受伤
  • 消息队列使用的四种场景介绍
  • python序列之元组介绍
  • NBA全明星队长选人环节将直播 又有什么新故事?
  • 过渡
  • 嵌入式应用选择合适的微控制器
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • bzoj 4566 [Haoi2016]找相同字符——广义后缀自动机
  • 实践这一次,彻底搞懂浏览器缓存机制
  • 一汽-大众SUV家族冰雪驾控营启动 在失控中感受操控
  • 微软Windows Core OS被曝应用了开源组件
  • (译)2019年前端性能优化清单 — 下篇
  • windows系统使用技巧
  • 实现RabbitMQ 延时消息
  • Java 23种设计模式 之单例模式 7种实现方式
  • 【前端学习】-粗谈选择器
  • DOM的那些事
  • JavaScript对象详解
  • LeetCode算法系列_0891_子序列宽度之和
  • Redis中的lru算法实现
  • SSH 免密登录
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • vue总结
  • Zsh 开发指南(第十四篇 文件读写)
  • 阿里研究院入选中国企业智库系统影响力榜
  • 安卓应用性能调试和优化经验分享
  • 后端_ThinkPHP5
  • 机器学习 vs. 深度学习
  • 基于webpack 的 vue 多页架构
  • 京东美团研发面经
  • 精彩代码 vue.js
  • 每天一个设计模式之命令模式
  • 让你的分享飞起来——极光推出社会化分享组件
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • 一道闭包题引发的思考
  • 移动端唤起键盘时取消position:fixed定位
  • 用quicker-worker.js轻松跑一个大数据遍历
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • ​【已解决】npm install​卡主不动的情况
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • "无招胜有招"nbsp;史上最全的互…
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • ( 10 )MySQL中的外键
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • (转)人的集合论——移山之道
  • .Mobi域名介绍
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .net 反编译_.net反编译的相关问题
  • .NET/C# 使窗口永不获得焦点
  • .NET开发不可不知、不可不用的辅助类(三)(报表导出---终结版)
  • .Net下C#针对Excel开发控件汇总(ClosedXML,EPPlus,NPOI)