练习:
输入一个整数n, 判断这个整数是否是素数(prime)
(素数是指只能被1 和自身整除的数)
如:
# 2 3 5 7 11...
方法:
用排除法.一但n能被2~n-1的数整除就不是素
数,否则就一定是素数
n = int(input("请输入一个整数: "))
if n < 2:
print(n, '不是素数')
exit()
方法 1
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
flag = True # true代表是素数,False代表不是素数
for i in range(2, n):
if n % i == 0:
print(n, '不是素数!')
flag = False
break
if flag == True:
print(n, '是素数!')
else:
print(n, '不是素数!')
方法2:
for i in range(2, n):
if n % i == 0:
print(n, '不是素数!')
break
else:
print(n, '是素数!')
1. 输入一个整数,代表树干的高度.
# 打印一棵"圣诞树"
# 如:
# 输入:2
# 打印
# *
# ***
# *
# *
# 输入:3
# 打印
# *
# ***
# *****
# *
# *
# *
n = int(input("请输入树干高度: "))
# 打印树叶部分
for i in range(1, n + 1): # i代表从上向下的行号
blanks_count = n - i # 计算空格个数
print(' '* blanks_count + '*' * (2*i-1))
# 打印树十部分
for i in range(1, n + 1):
print(' ' * (n - 1) + '*')
2. 用循环语句生成如下字符串
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# 'ABC.....XYZ'
# 'AaBbCc......XxYyZz'
# 提示:
# 用ord和chr函数结合循环语句实现
s = '' # 用来存入大写英文字母
s2 = '' # 用来存放大写小写混合的英文字母
for i in range(65, 65 + 26):
# print(chr(i))
s += chr(i)
s2 += chr(i) # 先放一个大写的
# 放入一个小写的字母
s2 += chr(i + 32)
# ord('a') - ord('A') # 32
print(s)
print(s2)
3. 算出 100 ~ 999 以内的水仙花数(Narcissistic number)
水仙花数是指百位的3次方加上十位的3次方加上个位的3次方等于原数的数字
# 例如:
# 153 等于 1**3 + 5**3 + 3**3
# 参考答案:
# 153, 370, ...
方法1
for x in range(100, 1000):
bai = x // 100
shi = x %100 // 10
ge = x % 10
if x == bai ** 3 + shi ** 3 + ge ** 3:
print(x)
方法2
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
for x in range(100, 1000):
s = str(x) # 得到字符串
bai = int(s[0]) # 百位
shi = int(s[1]) # 十位
ge = int(s[2]) # 个位
if x == bai ** 3 + shi ** 3 + ge ** 3:
print(x)
方法3
for bai in range(1, 10):
for shi in range(10):
for ge in range(10):
# print(bai, shi, ge)
x = bai * 100 + shi * 10 + ge
if x == bai ** 3 + shi ** 3 + ge ** 3:
print(x)