PTA的Python练习题(十)

从 第3章-22 输出大写英文字母 开始

1.

 

a=str(input())
b=''
for i in a:
    if 'A'<=i<='Z' and i not in b:
        b=b+i
if len(b)>0:
  print(b)
else:
  print('Not Found')

 

2.

a=eval(input())
for i in range(a+1):
    n=3**i
    print('pow(3,{}) = {}'.format(i,n))

 

3.

判断素数:

思路1):因此判断一个整数m是否是素数,只需把 m 被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么 m 就是一个素数。

思路2):另外判断方法还可以简化。m 不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~  之间的每一个整数去除就可以了。如果 m 不能被 2 ~  间任一整数整除,m 必定是素数。例如判别 17 是是否为素数,只需使 17 被 2~4 之间的每一个整数去除,由于都不能整除,可以判定 17 是素数。

直接求素数没有什么思路,但是我们可以反过来,先求非素数,再减去非素数:

a,b=map(int,input().split())
c=0
c2=0
count=0
count2=0
for i in range(a,b+1):
    for n in range(2,i):
        if i%n==0:
            c=c+1
            count=count+i
            break
for i in range(a,b+1):
    count2=count2+i
    c2=c2+1
print('{} {}'.format(c2-c,count2-count))
posted @ 2020-02-13 15:51  ch0bits  阅读(469)  评论(0编辑  收藏  举报