Python基礎練習之循環結構

3.	打印輸出下面的圖形(9行)
*
**
***
****
*****
******
*******
********
*********
#方法一:
str =  '*\n**\n***\n****\n*****\n******\n*******\n********\n*********'
print(str)
*
**
***
****
*****
******
*******
********
*********
#方法二:
for _ in range(1, 10):
    print("*" * _, end='\n')
*
**
***
****
*****
******
*******
********
*********


1)輸入n,打印n行上面形狀的圖形
2)打印倒三角形
3)自己定義某種圖形,進行打印
# 1)
for _ in range(1, eval(input("輸入n:")) + 1):
    print("*" * _, end='\n')
輸入n:9
*
**
***
****
*****
******
*******
********
*********
# 2)
for _ in range(eval(input("輸入n:")), -1, -1):
    print("*" * _, end='\n')
輸入n:9
*********
********
*******
******
*****
****
***
**
*

# 3)
n = eval(input("輸入n:")) #輸入行數
n = n + 1 if (n & 1) == 0 else n #輸出菱形需要奇數行
tmp = n // 2 + 1 #最大寬度的一半,計算空格時所需
for _ in range(1, n + 1):
    print(" " * abs(tmp - _) + "*" * (n - abs(2 * _ - (n + 1))), end='\n')
輸入n:6
   *
  ***
 *****
*******
 *****
  ***
   *


4.	打印九九乘法口訣表

for i in range(1, 10):
    for j in range(1, i + 1):
        print("{}*{}={}\t".format(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	


5.	有一張厚度爲0.1毫米的紙,假設它足夠大,重複將其對摺,求對摺多少次後,其厚度可以抵達(再對摺一次就超過)珠穆朗瑪峯的高度。(備註:珠峯高爲8848180毫米。)
count = 0
while 0.1 * 2 ** count <= 8848180:
    count += 1
count - 1
26



6.	輸入一個整數,判斷它是否爲素數(只能被1和它本身整除的數)
如果是,輸出Yes,否則輸出No
import math
import re

while True:
    n = input("輸入一個整數:")
    if re.match("[1-9][0-9]*$", n) == None:
        continue
    else:
        n = eval(n)
        break

def isPrime(num):
    if num < 2:
        print("No")
        return
    for _ in range(2, int(math.sqrt(num)) + 1):
        if num % _ == 0:
            print("No")
            return
    print("Yes")
isPrime(n)
輸入一個整數:234dsfs2324
輸入一個整數:3224dfs
輸入一個整數:123.123
輸入一個整數:234
No


7.	輸入一組工資值(如果小於0,重新輸入),直到輸入0結束。統計工資的平均值並輸出。
lst = [] #存儲有效值
while True:
    n = eval(input())
    while n < 0: #如果輸入的數小於0,則重新輸入並清空lst
        n = eval(input())
        list.clear(lst)
    if n == 0: #等於0退出
        break
    lst.append(n) #有效值加入lst
sum = 0
for _ in lst: #計算平均值
    sum += _
sum / len(lst)
1
-2
1
2
3
0



2.0
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章