Pyhon-每日一练(1)

🌈write in front🌈

🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流.

🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如需转载还请通知⚠️

📝个人主页:Aileen_0v0🧸---CSDN博客

🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​

📣系列专栏:Aileen_0v0🧸的PYTHON学习系列专栏------CSDN博客

🗼我的格言:"没有罗马,那就自己创造罗马~"

目录

(1)两数求和

(2)找100以内的偶数

[(3)找出 100 以内的奇数](#(3)找出 100 以内的奇数)

[(4) 判断素数(质数)](#(4) 判断素数(质数))


(1)两数求和

python 复制代码
# (1)两数求和
num1 = 1
num2 = 2
result = num1 + num2
print(result) 
#3

(2)找100以内的偶数

python 复制代码
#(2)找出 100 以内的偶数
# tip1:
for i in range (0,100):
    if i % 2 == 0:
        print(i)

偶数数目较多,如果我不想每次判断完,再输出,我们应该如何修改这个代码?

python 复制代码
# tip2:
list = []
for i in range (0,100):
    if i % 2 == 0:
        list.append(i)
print(list)

#[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98]

(3)找出 100 以内的奇数

python 复制代码
#(2)找出 100 以内的奇数
# tip 1:
list = []
for i in range(0,100):
    if i % 2 != 0 :
        list.append(i)
print(list)
python 复制代码
#tip 2:
list2 = []
for i in range(1,100,2):
    list2.append(i)
print(list2)

(4) 判断素数(质数)

编写程序,判断某一个数是否为素数。所谓素数指的是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。(1不是素数)

python 复制代码
#判断素数
#tip 1:
n = int (input("请输入一个正整数:"))
if n <=1:
    flag = True
else:
    flag = False
for i in range (2,n):
    if n % i == 0  :
        flag = True
        break
if flag:
    print(f"{n}是合数")
else:
    print(f"{n}是素数")

根据上面的代码验证一个数是否为素数,一般做法要把小于他的数全试一遍,比较麻烦。

不过现在只需要试几个素数就可以了。

筛法就是这样的原理

例如:求100内的素数,只需2,3,5,7这几个素数,将他们的倍数一一划入,剩下的就是待求的素数了。

也就是说,一个小于100的数只要不是2357的倍数,就一定是素数。

如果是1000内的素数,就需要划入从2到31的素数的倍数。

考虑这个最大的素数是怎么给出的。

7和11是相邻的素数

7*7=49_11*11=121

100就在他们之间。所以最大的素数就是7。

还可以给出更强的结论,求120内的素数依然可以仅使用2357

1000内的可以同样推得。

按照这样的想法,要判断一个数是否为素数,可以划分根据素数的平方来划定区间边界。

看他落在哪个区间。

2*2=4

3*3=9

5*5=25

7*7=49

11*11=121

...

尝试一下,比如57--->57**0.5 = 7.54

位于49-121区间,考虑2357

57/2=28...1

57/3=19

57/5=11...2

57/7=8...1

被3整除,故为合数。

试试59--->59**0.5 = 7.68

位于49-121,同样考虑2357

59/2=29...1

59/3=19...2

59/5=11...4

59/7=8...3

不能整除,是素数

同样,很大的数也可以这样算。

因为他是按照素数平方划定边界的,所以可以迅速增长到很大的值。

虽然是很小的技巧,但很大的提高了计算和判断的速度.

python 复制代码
#tip 2:
n = int(input("请输入一个正整数:"))
flag = True
if n <= 1:
    flag = False
else:
    for i in range(2, int(n**0.5)+1):
        if n % i == 0:
            flag = False
            break

if flag:
    print(n, "是素数")
else:
    print(n, "不是素数")
 
相关推荐
蒋星熠2 分钟前
中间件架构设计与实践:构建高性能分布式系统的核心基石
开发语言·数据库·分布式·python·中间件·性能优化·硬件工程
枫叶丹43 分钟前
【Qt开发】显示类控件(二)-> QLCDNumber
开发语言·qt
Flash.kkl6 分钟前
优先算法——专题十一:字符串
算法
凯尔萨厮10 分钟前
Java学习笔记四(继承)
java·笔记·学习
ホロHoro16 分钟前
学习笔记:Javascript(5)——事件监听(用户交互)
javascript·笔记·学习
爱喝水的鱼丶35 分钟前
SAP-MM:SAP核心组织单元:工厂(Plant)全面学习指南及配置图解
学习·sap·abap·配置·工厂·mm模块
励志不掉头发的内向程序员36 分钟前
STL库——AVL树
开发语言·c++·学习
晨非辰3 小时前
#C语言——刷题攻略:牛客编程入门训练(十一):攻克 循环控制(三),轻松拿捏!
c语言·开发语言·经验分享·学习·visual studio
海天一色y3 小时前
Pycharm(二十一)递归删除文件夹
ide·python·pycharm
xiaoxiaoxiaolll4 小时前
期刊速递 | 《Light Sci. Appl.》超宽带光热电机理研究,推动碳纳米管传感器在制药质控中的实际应用
人工智能·学习