赞
踩
编写函数,判断一个数是否为素数?并求出所有四位数的素数
import math
def sushu(m):
k = int(math.sqrt(m))
for i in range(2, k+2):
if m % i == 0:
break
if i == k+1:
return True
else:
return False
a=int(input('请输入一个数:'))
if a==1:
print('1既不是质数也不是合数')
else:
if sushu(a)==True:
print(a,'是素食')
else:
print(a,'是合数')
print('四位数素数为:')
n=0
for i in range(1001,10000,2):
if sushu(i)==True:
if n%30==0:
print()
print(i,end=' ')
n=n+1
在屏幕上输出 m 行 n 列的由某种符号构成的空心矩形
def dyjz(m,n,a):
for i in range(1,m+1):
if i==1 or i==m:
print(a*n)
else:
print(a+' '*int((n-2))+a)
m= int (input("输入打印行数:"))
n= int (input("输入打印列数:"))
a= str (input("要打印的字符:"))
dyjz(m,n,a)
生成一个随机小数6*6的矩阵,按第一列升序、第四列降序排序
import random
r=[]
print('原始矩阵')
for i in range(6):
s=[]
for j in range(6):
s.append(round(random.uniform(1,10),2))
r.append(s)
for i in r:
print(i)
print('排序后矩阵')
r_new=sorted(r,key=lambda x:[x[0],-x[3]])
for i in r_new:
print(i)
1。 编写一个函数判断一个数是否为素数,并通过调用该函数求出所有三位数的素数。
2.编写一个函数,求满足以下条件的最大的n值:
3.编写一个函数multi(),参数个数不限,返回所有参数的乘积。
4.编写一个函数,功能是求两个正整数m和n的最大公约数。
5.编写一个函数,调用该函数能够打印一个由指定字符组成的n行金字塔。其中,指定打印的字符和行数n分别由两个形参表示。
6. 十 进制转二进制
7。 回文字符串
print('-----------第1题-----------')
import math
def sushu(m):
k = int(math.sqrt(m))
for i in range(2, k+2):
if m % i == 0:
break
if i == k+1:
return True
else:
return False
n=0
for i in range(101,1000,2):
if sushu(i)==True:
if n%10==0:
print()
print(i,end=' ')
n=n+1
print('\n-----------第2题-----------')
def Maxn():
sum=0
n=0
while sum<1000:
n=n+1
sum=sum+n*n
return n-1
print('满足条件的最大n值为:',Maxn())
print('-----------第3题-----------')
def multi():
str=input("输入要计算的参数:")
c=1
for item in str.split():
c=c*int(item)
print('所输入参数的乘积为:',c)
multi()
'''
本部分为批注
def multi():
try:
str=input("输入要计算的参数,用空格隔开")
c=1
for item in str.split():
#通过for循环可根据特定符号简洁分割字符串,split()无参默认根据空格切割
c=c*int(item)#切割出来的是字符串,需强转成int型,便于运算
print(c)
except:
print("error")
multi()
def multi(*num):
sum=1
for i in num :
sum=sum*i
return sum
print(multi(2,3,4))
def revser(s):
return s[::-1]
print ('请输入字符串:',end='')
m=input()
print(revser(m))
'''
print('-----------第4题-----------')
def gys(m, n):
if m < n:
m, n = n, m
while n != 0:
temp = m % n
m = n
n = temp
return m
a=int(input('请输入m:'))
b=int(input('请输入n:'))
print('m和n的最大公约数是:',gys(a,b))
print('-----------第5题-----------')
def jzt(m,n):
for i in range(1,n):
print(' '*(20-(i-1)),m*(2*i-1))
a= int (input("输入打印行数:"))
b= str (input("要打印的字符:"))
jzt(b,a+1)
print('-----------第6题-----------')
def trans(m):
print(bin(m))
#本题直接调用的内置函数
#或使用下列方法:
'''
def trans(n):
list = []
while n//2 != 0:
list.append(n%2)
n = n // 2
if n//2 == 0:
list.append(n%2)
break
list.reverse()
for t in list:
print(t,end='')
print()
#主函数
trans(int(input("请输入一个数:")))
'''
a=int (input("需要转换的十进制数为:"))
trans(a)
print('-----------第7题-----------')
def huiwen(e):
x=0
y=len(e)-1
while x<y:
if(e[x] != e[y]):
break
x+=1
y-=1
if(x<y):
flag=0
else:
flag=1
return flag
e=input("请输入一串字符:")
if(huiwen(e)):
print("这是回文字符串\n")
else:
print("这不是回文字符串\n")
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。