质数判断
num=int(input())
if num>1:
for i in range(2,num):
if num%i==0:
print('不是质数')
break
else:
print('是质数')
else:
print('不是质数')
输出指定范围内的素数
a=int(input('请输入左区间:'))
b=int(input('请输入右区间:'))
for i in range(a,b+1):
if i>1:
for j in range(2,i):
if i%j==0:
break
else:
print(i)
阶乘实例
n=int(input())
s=1
for i in range(1,n+1):
s=s*i
print(s)
num=int(input('请输入一个数字'))
factorial = 1
if num < 0:
print("抱歉,负数没有阶乘")
elif num == 0:
print("0 的阶乘为 1")
else:
for i in range(1, num + 1):
factorial = factorial * i
print("%d 的阶乘为 %d" % (num, factorial))
print(f'{num}的阶乘为{factorial}')
九九乘法表
for i in range(1, 10):
for j in range(1, i+1):
print('{}x{}={}\t'.format(j, i, i*j), end='')
print()
for i in range(1, 10):
for j in range(1, i+1):
print(f'{j}*{i}={j*i}\t',end='')
print()
斐波那契数列
n=int(input())
n1 = 0
n2 =1
print(f'{n1} {n2} ',end='')
for i in range(1,n-1):
n3=n1+n2
n1=n2
n2=n3
print(f'{n3} ',end='')
nterms = int(input("你需要几项?"))
# 第一和第二项
n1 = 0
n2 = 1
count = 2
# 判断输入的值是否合法
if nterms <= 0:
print("请输入一个正整数。")
elif 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
阿姆斯特朗数
um=int(input())
sum=0
n=len(str(num))
temp = num
while temp > 0:
digit = temp % 10 #取出最低位的数字
sum += digit ** n #累加最低位的n次方
temp //= 10 #继续取出剩余的数
#562-->2-->2的3次-->56-->56>0-->6的3次-->5-->5的3次-->0 结束
# 输出结果
if num == sum:
print(num, "是阿姆斯特朗数")
else:
print(num, "不是阿姆斯特朗数")
十进制转二进制、八进制、十六进制
dec = int(input("输入数字:"))
print("十进制数为:", dec)
print("转换为二进制为:", bin(dec))
print("转换为八进制为:", oct(dec))
print("转换为十六进制为:", hex(dec))
binary_number = '101010'
decimal_number = int(binary_number, 2) # 二进制转换为十进制
octal_number = oct(decimal_number) # 十进制转换为八进制
hexadecimal_number = hex(decimal_number) # 十进制转换为十六进制
print('二进制数:', binary_number)
print('转换为十进制:', decimal_number)
print('转换为八进制:', octal_number)
print('转换为十六进制:', hexadecimal_number)
ASCII码与字符相互转换
c = input("请输入一个字符: ")
# 用户输入ASCII码,并将输入的数字转为整型
a = int(input("请输入一个ASCII码: "))
print(c, " 的ASCII 码为", ord(c))
print(a, " 对应的字符为", chr(a))
最大公约数算法
def gcd(a, b):
while b:
a, b = b, a % b
return a
num1 = 12
num2 = 18
print(f"最大公约数: {gcd(num1, num2)}") # 输出: 最大公约数: 6
import math
num1 = 12
num2 = 18
print(f"最大公约数: {math.gcd(num1, num2)}") # 输出: 最大公约数: 6
def hcf(x, y):
"""该函数返回两个数的最大公约数"""
# 获取最小值
if x > y:
smaller = y
else:
smaller = x
for i in range(1, smaller + 1):
if ((x % i == 0) and (y % i == 0)):
hcf = i
return hcf
# 用户输入两个数字
num1 = int(input("输入第一个数字: "))
num2 = int(input("输入第二个数字: "))
print(num1, "和", num2, "的最大公约数为", hcf(num1, num2))
a=int(input("输入第一个数字: "))
b=int(input("输入第二个数字: "))
if b>a:
temp = a
a = b
b= temp
while b>0:
c=a%b
a=b
b=c
print(a)
最小公倍数算法
def lcm(x, y):
# 获取最大的数
if x > y:
greater = x
else:
greater = y
while (True):
if ((greater % x == 0) and (greater % y == 0)):
lcm = greater
break
greater += 1
return lcm
# 获取用户输入
num1 = int(input("输入第一个数字: "))
num2 = int(input("输入第二个数字: "))
print(num1, "和", num2, "的最小公倍数为", lcm(num1, num2))
def gcd(a, b):
while b:
a, b = b, a % b
return a
# 示例
num1 = 12
num2 = 18
print(f"最大公约数: {gcd(num1, num2)}") # 输出: 最大公约数: 6
c=num1*num2//gcd(num1, num2)
print(c)
a=int(input("输入第一个数字: "))
b=int(input("输入第二个数字: "))
s=a*b
if b>a:
temp = a
a = b
b= temp
while b>0:
c=a%b
a=b
b=c
m=s//a
print(m)