學習python過程我所練習的一些習題
阿新 • • 發佈:2019-02-09
一.
給定一個不超過五位的正整數,判斷其位數,並依次打印出各位,十位,百位,千位,萬位,然後反著再來一遍.
萬位到個位的解法
個位到萬位a=input('>>>') b=int(a) print(b) if b>999: if b>9999: n=5 else: n=4 else: if b>99: n=3 elif b>9: n=2 else: n=1 print(n) for i in range(n): x = b // 10**(n-1) print(x) y = b - x*10**(n-1) b = y n = n - 1
a=input('>>>')
b=int(a)
print(b)
if b>999:
if b>9999:
n=5
else:
n=4
else:
if b>99:
n=3
elif b>9:
n=2
else:
n=1
print(n)
for i in range(n):
s = b // 10
m = b - s*10
print(m)
b = s
二.列印一個邊長為n的正方形
n=int(input('>>>') print('#'*n) for i in range(n-2): print('#',''*(n-2),'#') print('#'*n)
三. 求100以內的所有奇數的和
n=0
for i in range(1,100,2):
n += i
print(n)
四. 判斷學生成績,等級A-E:
n=int(input('>>>'))
if n>69:
if n>89:
print('A')
elif n>79:
print('B')
else:
print('C')
else:
if n>59:
print('D')
else:
print('E')
五. 列印乘法口訣表
列印乘法口訣表矩陣的上半部分for i in range(1,10): for j in range(1,i+1): print(str(i)+'*'+str(j)+'='+str(i*j),end=' ') print('\t')
for i in range(1,10):
s=""
for j in range(i,10):
s += '{}*{}={:<{}}'.format(i,j,i*j,2 if j<4 else 3)
print('{:>66}'.format(s))
for i in range(1,10):
s=''
for j in range(i,10):
s+=str(i)+'*'+str(j)+'='+str(i*j)
print('{:>90}'.format(s))
需要讓賦一個空值給s,否則借用s的時候會重複9遍,而且print是一個命令,不可以直接返回給s,所以不能讓s直接等於line4理解後列印各種半部分,提示,考慮以4為邊界,可以應用三目表示式.
a=23
if a>2:
c=12
else:
c=13
print(c)
用三目表示式寫為:
a=23
c=12 if a>2 else 13
print(c)
六.求1到5的階乘之和
s=1
sum=0
for i in range(1,6):
s=s*i
sum += s
print(sum)