day05 作业 2018-07-21

第一题

i = int(input('请输入一个整数:\n>>>'))
s = 0
sum1=0
for x in range(i):
    s += 2*10**x
    sum1 += s
print(sum1)

请输入一个整数:
>>>5
24690

第二题

day05 作业 2018-07-21_第1张图片
n = int(input('请输入一个整数:\n>>>'))
str2 = '@'
for x in range(n):
    print(str2*(x+1))

请输入一个整数:
>>>5
@
@@
@@@
@@@@
@@@@@

第三题

day05 作业 2018-07-21_第2张图片
n = int(input('请输入一个整数:\n>>>'))
str3 = '@'
for x in range(n):
    print(' '*(n-x-1)+str3*(2*x+1))
day05 作业 2018-07-21_第3张图片

第四题

day05 作业 2018-07-21_第4张图片
n = int(input('请输入一个整数:\n>>>'))
str2 = '@'
for x in range(n):
    print(str2*(n-x))

请输入一个整数:
>>>4
@@@@
@@@
@@
@

第五题

a = m = int(input('请输入一个整数:\n>>>'))
b = n = int(input('请再输入一个整数:\n>>>'))
if m%2 == 0 and n%2 == 0:
    m /= 2
    n /=2
while m != n:
    if m > n:
        m -= n
    if n > m:
        n -= m
print('%d和%d的最大公因数是:%d'%(a,b,m))
print('%d和%d的最小公倍数是:%d'%(a,b,a*b/m))

请输入一个整数:
>>>319
请再输入一个整数:
>>>377
319和377的最大公因数是:29
319和377的最小公倍数是:4147

第六题

for i in range(1,1001):
    count = 0
    if i == 1:
        print('%d是一个完数' % (i))
        continue
    for j in range(1,i):
        if i%j == 0:
            count += j
        if i == count:
            print('%d是一个完数'%(i))
            break

1是一个完数
6是一个完数
24是一个完数
28是一个完数
496是一个完数

第七题

for i in range(1,10):
    for j in range(1,i+1):
        print('%-2d× %-2d = %-2d'%(j,i,i*j),end='   ')
    print(' ')

1 × 1 = 1
1 × 2 = 2 2 × 2 = 4
1 × 3 = 3 2 × 3 = 6 3 × 3 = 9
1 × 4 = 4 2 × 4 = 8 3 × 4 = 12 4 × 4 = 16
1 × 5 = 5 2 × 5 = 10 3 × 5 = 15 4 × 5 = 20 5 × 5 = 25
1 × 6 = 6 2 × 6 = 12 3 × 6 = 18 4 × 6 = 24 5 × 6 = 30 6 × 6 = 36
1 × 7 = 7 2 × 7 = 14 3 × 7 = 21 4 × 7 = 28 5 × 7 = 35 6 × 7 = 42 7 × 7 = 49
1 × 8 = 8 2 × 8 = 16 3 × 8 = 24 4 × 8 = 32 5 × 8 = 40 6 × 8 = 48 7 × 8 = 56 8 × 8 = 64
1 × 9 = 9 2 × 9 = 18 3 × 9 = 27 4 × 9 = 36 5 × 9 = 45 6 × 9 = 54 7 × 9 = 63 8 × 9 = 72 9 × 9 = 81

第八题

n = input('请输入一个五位数(10000~99999):\n>>>')
if not (10000 <= int(n) <= 99999):
    print('不规范的输入')
elif n == n[::-1]:
    print('%s是一个回文数!' % n)
else:
    print('%s不是一个回文数!' % n)

请输入一个五位数(10000~99999):
>>>12323
12323不是一个回文数!

请输入一个五位数(10000~99999):
>>>23432
23432是一个回文数!

第九题

day05 作业 2018-07-21_第5张图片
n = int(input('请输入一个整数:\n>>>'))
str3 = '@'
for x in range(n):
    print(' '*(n-x-1)+str3*(2*x+1))
for x in range(n-1):
    print(' '* (x+1) + str3 *(2* n - 2*x- 3))
day05 作业 2018-07-21_第6张图片

第十题

words = '为 额 ewoie@$#666#$%#(*(674 ?{|'
count_alpha = 0
count_digit = 0
count_space = 0
count_else = 0
for word in words:
    if word.isalpha():
        count_alpha += 1
    elif word.isalnum():
        count_digit += 1
    elif word.isspace():
        count_space += 1
    else:
        count_else += 1
print(words)
print('这串字符包含%d个英文字母,%d个数字,%d个空格,%d个其他字符'%(count_alpha,count_digit,count_space,count_else))

为 额 ewoie@#666#%#(*(674 ?{|
这串字符包含7个英文字母,6个数字,3个空格,13个其他字符

你可能感兴趣的:(day05 作业 2018-07-21)