【python学习日记】实例——随机数生成、判断闰年、阶乘实例
生成随机数
random.randint(a,b)函数返回数字 N ,N 为 a 到 b 之间的数字(a <= N <= b)
import random
a = random.randint(0,9)
b = random.randint(0,9)
sum = a+b
print('%d与%d相加为%d'%(a,b,sum))
判断闰年
import random
year = random.randint(1980,2018)
if (year %4) ==0:
if (year %100) ==0:
if (year %400) ==0:
print("{0} 是闰年".format(year))# 整百年能被400整除的是闰年
else:
print("{0} 不是闰年".format(year))
else:
print("{0} 是闰年".format(year))# 非整百年能被4整除的为闰年
else:
print("{0} 不是闰年".format(year))
质数判断:一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2, 3, 5, 7等),换句话说就是该数除了1和它本身以外不再有其他的因数。
import random
num = random.randint(5,90)
if num >1:
for iin range(2, num):
if (num % i) ==0:
print(num,"不是质数")
print(i,"乘于", num // i,"是", num)
break
else:
print(num,"是质数")
else:
print(num,"不是质数")
阶乘是所有小于及等于该数的正整数的积,0的阶乘为1。即:n!=1×2×3×...×n。
import random
num = random.randint(-9,9)
a =1
# 查看数字是负数,0 或 正数
if num <0:
print("%d 没有阶乘" % num)
elif num ==0:
print("0 的阶乘为 1")
else:
for iin range(1, num +1):
a = a * i
print("%d 的阶乘为 %d" % (num, a))
九九乘法表
for iin range(1,10):
for jin range(1, i+1):
print('{}x{}={}\t'.format(i, j, i*j),end='')
print()
斐波那契数列:从第三项开始,每一项都等于前两项之和。 0, 1, 1, 2, 3, 5, 8, 13
import random
nterms = random.randint(1,20)
print('随机生成需要的第%d项'%nterms)
n1 =0
n2 =1 # 第一和第二项
count =2
if nterms ==1:
print("斐波那契数列:")
print(n1)
else:
print("斐波那契数列:")
print(n1,",", n2,end=" , ")
while count < nterms:
nth = n1 + n2
print(nth,end=" , ")
n1 = n2# 更新值
n2 = nth
count +=1
阿姆斯特朗数
如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数。 例如1^3 + 5^3 + 3^3 = 153。1000以内的阿姆斯特朗数: 1, 2, 3, 4, 5, 6, 7, 8, 9, 153, 370, 371, 407。
import random
num = random.randint(1,1000)
sum =0
n =len(str(num))
temp = num
while temp >0:
digit = temp %10
sum += digit ** n
temp //=10
if num == sum:
print(num,"是阿姆斯特朗数")
else:
print(num,"不是阿姆斯特朗数")
简单计算器实现(两个数基本的加减乘除)
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
return x / y
# 用户输入
print("选择运算:")
print("1、相加")
print("2、相减")
print("3、相乘")
print("4、相除")
choice =input("输入你的选择(1/2/3/4):")
num1 =int(input("输入第一个数字: "))
num2 =int(input("输入第二个数字: "))
if choice =='1':
print(num1,"+", num2,"=", add(num1, num2))
elif choice =='2':
print(num1,"-", num2,"=", subtract(num1, num2))
elif choice =='3':
print(num1,"*", num2,"=", multiply(num1, num2))
elif choice =='4':
print(num1,"/", num2,"=", divide(num1, num2))
else:
print("非法输入")
获取最大值函数print(max(1, 2))