python练习题(二)

题目:判断101-200之间有多少个素数,并输出所有素数。

#质数只能被1和自己本身整除,也称为素数

for i in range(101,201):
    for k in range(2,i):
        if i%k==0:
            break
    else:
        print(i,'是质数')

2、打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
注意:python3中/结果为小数,所以最好用//

for n in range(100,1000):
    i=n // 100
    j=n // 10 % 10
    k=n % 10
    if n == i ** 3 + j ** 3 + k ** 3:
       print(n)
 

3、将一个正整数分解质因数。例如:输入90,打印出90=233*5。

rom math import sqrt
while 1:
    n=int(input('请输入整数:'))
    #n=12
    print ("%d = "%n , end = '')
    while 1:
        for i in range(2,int(sqrt(n)+1)):
            if n%i==0:
                print('%d*'%i,end='')
                n=int(n/i)
                break
        else:
            print(n)
            break

4、

score=int(input('请输入分数'))
if score>=90:
    s='A'
elif score>=60 and score<=89:
    s = 'B'
elif score<60:
    s = 'C'

print('你的分数%d,等级为:%s'%(score,s)

5、输出指定格式的日期

import datetime
 
if __name__ == '__main__':
 
    # 输出今日日期,格式为 dd/mm/yyyy。更多选项可以查看 strftime() 方法
    print(datetime.date.today().strftime('%d/%m/%Y'))
 
    # 创建日期对象
    miyazakiBirthDate = datetime.date(1941, 1, 5)
 
    print(miyazakiBirthDate.strftime('%d/%m/%Y'))
 
    # 日期算术运算
    miyazakiBirthNextDay = miyazakiBirthDate + datetime.timedelta(days=1)
 
    print(miyazakiBirthNextDay.strftime('%d/%m/%Y'))
 
    # 日期替换
    miyazakiFirstBirthday = miyazakiBirthDate.replace(year=miyazakiBirthDate.year + 1)
 
    print(miyazakiFirstBirthday.strftime('%d/%m/%Y'))

6、输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

count=0
count1=0
count2=0
count3=0
s=input('请输入字符:')
for i in s:
    if i.isdigit():
        count=count+1
    elif i.isalpha():
        count1=count1+1
    elif i.isspace():
        count2=count+1
    else:
        count3=count3+1
print('字母%s个,数字%s个,空格%s个,其他%s个'%(count1,count,count2,count3))

猜你喜欢

转载自blog.csdn.net/qq_37493425/article/details/85060401