D4 循环结构
练习1:输入一个正整数判断是不是素数。
x= int(input('x='))
c = False
for a in range(2,x):
b=x%a
c= (c or b==0)
if c==True:
print('%d不是素数'%x)
else:
print('%d是素数'%x)
练习2:输入两个正整数,计算它们的最大公约数和最小公倍数。
x= int(input('请输入第一个正整数:'))
y= int(input('请输入第二个正整数:'))
if x>y:
for z in range(y,0,-1):
if x%z==0 and y%z == 0:
print('%d和%d的最小公倍数是%d'%(x,y,x * y //z))
print('%d和%d的最大公约数是%d'% (x, y, z))
break
elif y>x:
for z in range(x,0,-1):
if x%z==0 and y%z == 0:
print('%d和%d的最小公倍数是%d'%(x,y,x * y //z))
print('%d和%d的最大公约数是%d'% (x, y, z))
break
else:
print('%d和%d的最小公倍数是%d' % (x, y, y))
print('%d和%d的最大公约数是%d' % (x, y, x))
D5 构造程序逻辑
寻找“水仙花数”
说明:水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯特朗数,它是一个3位数,该数字每个位上数字的立方之和正好等于它本身,例如:1 3 + 5 3 + 3 3 = 153 1^3 + 5^3+ 3^3=15313+53+33=153。
for x in range(100,1000):
# a = x // 1000 #千位
b = x % 1000 // 100 #百位
c = x % 100 // 10 #十位
d = x %10 #个位
if x== b**3+c**3+d**3:
print(x)
D6 函数和模块的使用
练习1:实现计算求最大公约数和最小公倍数的函数。
module.py
def mmax(x,y):
(x,y)=(y,x) if x>y else (x,y)
for z in range(x,0,-1):
if y%z==0 and x%z == 0:
return z
def mmin(x,y):
return x*y//mmax(x,y)
test.py
import module3 as m3
x=int(input('x='))
y=int(input('y='))
print('%d和%d的最大公约数是%d'%(x,y,m3.mmax(x,y)))
print('%d和%d的最小公倍数是%d'%(x,y,m3.mmin(x,y)))
练习2:实现判断一个数是不是回文数的函数。
转为字符串
def isPalindrome(x):
x = str(x)
if x == x[::-1]:
return True
else:
return False
z=isPalindrome(int(input('z=')))
print(z)
版权声明:本文为weixin_43676412原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。