前言: 本人苦逼的來補做業啦函數
解題思路:
(While循環):首先按題目要求建立一個列表或元組,而後初始化變量i和一個標記變量h,使用while循環將列表或元組裏的數據遍歷出來放入一個變量裏假設放在變量a(While循環遍歷是依次遍歷,for循環也是),隨後把變量i加一讓它能進入下次循環,因爲當前值是鍵值爲0對應的數值,那麼咱們只須要在i+1的後面再遍歷一個數值賦予變量b這樣b的值就是列表裏a的值的後一位,而後我將a+b就能夠得出列表中鍵值0+鍵值1的數值,而後賦值給a,依次運算下去即可獲得全部數值相加的和,可是要注意的是,我while循環裏第一行的代碼就是a的賦值,這樣本來兩個數值的和就會被替換掉,因此這個時候標記變量h的做用就體現出來了,我將給a的賦值放入一個if條件判斷裏,當h爲False的時候進入a的賦值,接着完成第一次a的賦值以後在最後面將h的值改成True以此再也不進入a的賦值,想法成立,開始實現。學習
代碼:3d
alist=(1,4,8,4,5) i=0 h=False #標記變量 while i<alist[4]: if h!=True: a=alist[i] i=i+1 if i<alist[4]: b=alist[i] a=a+b h=True print (a)
運算結果:
code
(for循環):for循環就比較輕鬆了,直接將數值遍歷出來,而後放入另外一個變量裏,再建立一個新變量,讓這兩個變量相加,依次循環下去即可獲得最終的和。
代碼:blog
a=(1,2,3,4,5) b=0 for i in a : g=i b=b+g print (b)
運算結果three
解題思路:
這一題沒有規定只能用for循環仍是while循環,那就好辦了,先是按照題目要求建立固定數值的列表或者元組,使用for循環得出和,在將得出的和除於它們的個數便可得出平均值,以防萬一就按照題目要求把平均值轉換成浮點數在打印出來。字符串
代碼:input
alist=(1,4,8,4,5) b=0 for i in alist: g=i b=b+g b=b/5 print (float(b))
運行結果:it
解題思路:
先是用input函數獲取用戶輸入的數值,而後它說若是用戶輸入的數值知足這個條件才退出,不然直到知足條件爲止,這裏就很明顯告訴咱們要用while循環,也要用到標記變量來控制while循環,建立一個標記變量給它的值爲True,接着使用while循環,獲取用戶輸入的數據放入num變量裏,接着拉一個number變量過來讓num變量先是用int()「淨化」一下放入number變量中,到這一步我我的突發奇想一想自定義一個函數用來處理檢測用戶輸入的數值是否知足要求,函數裏面用if判斷用戶輸入的數據知足要求就返回False,不知足則放出一條報錯信息(本身寫一條報錯信息)並返回False,隨後在while循環裏面將函數返回的值放入一個變量裏面,接着判斷變量返回是true仍是false,並給標記變量賦予相應的布爾值來跳出仍是繼續while循環。for循環
代碼:
h=False #標記變量 def check(nm): nm=int(nm) if nm>0 and nm<101: return True else : print ('Error is :'+'you did not enter a value of 1-100');return False while h==False: num=input('Please enter a value of 1-100: ') number=int(num) end=check(number) if end==True: print ('成功') h=True elif end==False : h=False
運算結果:
解題思路:
這一題就很像代碼封裝了,每一個選項調用相應的代碼,而後還要用到while循環和標記變量達到知足條件才能退出,首先我先用一個變量存儲菜單選項字符串((1) 取五個數的和;\n(2) 取五個數的平均值;\n(X) 退出\n),而後放到input函數裏面將獲取到的數值放到select變量裏,而後建立變量b和一個列表或者元組,用if判斷用戶輸入的數是哪個而後進入相應的邏輯,這裏要注意的是1和2要加上單引號,否則會抱出類型比較錯誤的問題,由於用戶輸入的數值也是字符串類型的,邏輯裏面賦值粘貼以前的代碼就好了,若是是x選項直接exit()退出標記變量爲False便可。
代碼:
h=True while h==True: menu="(1) 取五個數的和;\n(2) 取五個數的平均值;\n(X) 退出\n" select=input(menu) b=0 a=[7,9,5,2,8] if select == 'x': h=False exit() elif select == '1': for i in a: int=i b=int+b print ('和:',b) elif select == '2': for i in a: int=i b=int+b b=b/5 print ('平均值:',b)
運算結果:
解題思路:看題就知道要用while循環來取三次數值,用input獲取用戶輸入的數值,而後放入變量number裏,if判斷當前循環的次數爲多少,1就賦值給a 2就賦值給b 3就賦值給c,將賦值的數所有用int函數淨化一遍,而後進入下條if邏輯判斷,a>b>c,c>b>a等等,附上代碼。
代碼:
i=0 while i<3: number=input('Please enter your three number: ') if i==0: a=int(number) if i==1: b=int(number) if i==2: c=int(number) i=i+1 if a>b>c: print (a,'>',b,'>',c) if c>b>a: print (c,'>',b,'>',a) if a>c>b: print (a,'>',c,'>',b) if b>a>c: print (b,'>',c,'>',a) if c>a>b: print (c,'>',a,'>',b) if b>c>a: print (b,'>',c,'>',a)
運算結果:
學習筆記一到此結束,呼,寫筆記不比學習輕鬆啊哈哈