专栏首页洞明学问Python 计算质数提升

Python 计算质数提升

今天在做 Python 学习的时候,发现自己对于代码的递归和循环的控制,还有实现编程的思考太过简单了,一道简单的编程题,浪费掉了我很多的时间才完成,真的是太不应该了,这倒题是说给定一个数,可以是整数,也可以是浮点数,然后计算这个数之后的5个质数,并输出出来。

现在整理一下思路,求解质数不说了,可以直接使用上次的方案:

def prime(n):
    if n == 1:
        return False
    for i in range(2, int(math.sqrt(n)) + 1):
        if n % i == 0:
            return False
    return True

然后就是进入到计算连续的五个数中,首先考虑的是,我需要输出过程中使用五次循环,但是我本身找质数的过程中也应该使用一个计数器循环,所以在最后,应该按下面的方式进行:

start = int(n) + 1
i = 0
while i < 5:
    if prime(start):
        primes.append(str(start))
        i += 1
        start += 1
    else:
        start += 1
print(','.join(primes))

所以在最后得到的完整的代码段应该是下面这样的:

import math
def prime(n):
    if n == 1:
        return False
    for i in range(2, int(math.sqrt(n)) + 1):
        if n % i == 0:
            return False
    return True
n = eval(input())
primes = []
start = int(n) + 1
i = 0
while i < 5:
    if prime(start):
        primes.append(str(start))
        i += 1
    start += 1
print(','.join(primes))

这次给自己提了个醒,虽然 Python 这门语言特别简单,但是编程这件事儿却手是完全不一样的两个东西。

希望自己能成为一个高手,而不是一个没用的老手。

  • changeSet: id: 1 author: your_name changs: encoding: utf8 path: classpath: path/file.sql

#+END_SRC

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python 求解质数

    质数求解是一个非常好的由数据思维转换为计算思维的过程,也是我在初学 C 语言的时候,学的第一个算法,这次在学习 python 的时候,又看到了这个方法,所以针对...

    zucchiniy
  • Python 开发环境管理

    虚拟环境主要合适 virtualenv 和 virtualenvwrapper 来管理,在 Windows 系统上,则使用的是 virtualenvwrappe...

    zucchiniy
  • Hugo 常用命令

    用来生成新的文章,基于 *archetypes/default.md* 来快速生成。

    zucchiniy
  • CountDownLatch的原理

    上次大概说了CountDownLatch的使用,今天说下实现的原理,CountDownLatch的使用效果和Join差不多,实现起来也比较简单。

    付威
  • 深入理解-Spring-之源码剖析IOC(一)

    作为Java程序员,Spirng我们再熟悉不过,可以说比自己的女朋友还要亲密,每天都会和他在一起,然而我们真的了解spring吗?

    用户5224393
  • 深入理解-Spring-之源码剖析IOC(一)

    作为Java程序员,Spirng我们再熟悉不过,可以说比自己的女朋友还要亲密,每天都会和他在一起,然而我们真的了解spring吗?

    黄泽杰
  • C#截取指定字符串函数

    本文转载:http://www.cnblogs.com/liufei88866/archive/2012/05/12/2497395.html

    跟着阿笨一起玩NET
  • php检测值是否存在二维数组

    本文为仙士可原创文章,转载无需和我联系,但请注明来自仙士可博客www.php20.cn

    仙士可
  • ZooKeeper 分布式锁实现

    用户1263954
  • Spring源码剖析2:初探Spring IOC核心流程

    本文大致地介绍了IOC容器的初始化过程,只列出了比较重要的过程和代码,可以从中看出IOC容器执行的大致流程。

    Java技术江湖

扫码关注云+社区

领取腾讯云代金券