1.计算一个数的阶乘
n=int(input("请输入一个整数"))
sum=1
for i in range(1,n+1):
sum*=i
print(sum)
这里用到一个for循环 没什么好说的 主要是要注意int()这个语句 如果不加就会报错 因为 此刻你输入的数会变成string类型 需要用int 将其转型
n=int(input("请输入一个整数:"))
sum=1
while n>0 :
sum*=n
n-=1
print(sum)
2.计算给定区间内的素数
首先要要明白素数的概念
那就是除了1和他本身 不能被任何数整除
def is_primer(number):
if number in (1,2):
return True
for idx in range(2,number):
if number % idx ==0:
return False
return True
def print_primers(begin,end):
for number in range(begin,end+1):
if is_primer(number):
print(f"{number} is a primer")
begin = 11
end= 25
print_primers(begin,end)
这个代码利用了自定义函数 def来定义两个函数 一个是is_primers用来判断传入的参数是不是素数 另一个就是print_primers()用来打印是素数的数
在is_primers中如果这个数是1 就返回true
反之则进行判断 判断这个数能不能进行for循环来找到一个能被他整除的数
很简单的一个素数题
3.计算给定区间内奇数与偶数的个数
begin=int(input("请输入一个起始的整数数字:"))
end=int (input("请输入一个最终的整数数字:"))
sum=0
num=0
def is_oushujishu(number):
if number%2==0:
return True
else :
return False
for idex in range(begin,end+1):
if is_oushujishu(idex):
sum+=1
else:
num+=1
print(f"偶数的个数为:{sum}")
print(f"奇数的个数为:{num}")
4.简单排序
借用sort函数来实现升序排序和降序排序
lista=[1,5,4,3,2]
lista.sort()
listb=sorted(lista,reverse=True)
print(lista,listb)
单纯使用lista.sort()的意思就是就行降序排序
而如果加入reverse=True就相当于升序排序
运行结果如下:
5.自定义函数求规定范围内的素数
start1 = int(input("请输入一个起始变量start:"))
end1 = int(input("请输入一个终止变量"))
def qiusushu(start1, end1):
for index in range(start1, end1+1):
if index==1:
continue
ans = 1
for i in range(2, index):
if index % i==0:
ans = 0
break
if ans:
print(index)
qiusushu(start1,end1)
6.判断回文串:
这里用到一个str_2= str_1[::-1]这里的意思就是将字符串str_1倒过来赋值个str_2 然后进行for循环一个一个元素进行判断是否相等 如果相等 则记录下来
str_1 =input("请输入一个字符串:")
str_2=str_1[::-1]
num=0
for index in range(len(str_1)):
if str_1[index]==str_2[index]:
num+=1
if num==len(str_1):
print("这是一个回文串")
else:
print("这不是一个回文串")