180405之循环嵌套
1、使用while循環計算1~100的累積和(包含1和100),但要求跳過所有個位為3的數。
1 def func1_1(n): 2 sum = 0 3 i = 1 4 while i <= n: 5 if i % 10 == 3: 6 sum = sum 7 else: 8 sum = sum + i 9 i += 1 10 print(sum)?
def func1(n):sum = 0for i in range(1,n+1):if i % 10 ==3:continueelse:sum = sum + iprint(sum)?
2、從鍵盤獲取一個數字,然后計算它的階乘,例如輸入的是3,
那么即計算3!的結果,并輸出
提示:
1!等于 1
2!等于 1*2
3!等于 1*2*3
n!等于 1*2*3*...*n
?
1 def func2(): 2 num = int(input("請輸入一個數字")) 3 data = 1 4 while num >=1: 5 data = data*num 6 num = num-1 7 print(data)?
?
3、使用while循環輸出如下圖形:(必須使用雙重while循環實現)
*
* *
* * *
* * * *
* * * * *
?
def func3():i = 1while i <= 5:j = 1while j <=i:print('*',end="")j +=1i += 1print()?
4、使用while循環輸出如下圖形:(必須使用雙重while循環實現)
*
* *
* * *
* * * *
* * * * *
?
1 def func4(): 2 i = 1 3 while i <=5: 4 j = 1 5 while j <=9: 6 if i%2==1 and (5-i) <j and j< (5+i) and j%2==1: 7 print('*',end='') 8 elif i%2==0 and 5-i <=j<= 5+i and j%2==0: 9 print('*',end ="") 10 else: 11 print(" ",end="") 12 j +=1 13 i +=1 14 print()?
5、求 1+2!+3!+...+20! 的和。
?
1 def func5(): 2 i = 1 3 temp = 0 4 while i <= 20: 5 data = 1 6 j = 1 7 while j <= i: 8 data = data * j 9 j = j + 1 10 temp = temp + data 11 i += 1 12 print(temp)?
6、本金10000元存入銀行,年利率是千分之三。
每過1年,將本金和利息相加作為新的本金。
計算5年后,獲得的本金是多少?
?
1 def func6(): 2 year = 1 3 capital = 10000 4 while year <= 5: 5 profit = capital * (3 / 1000) 6 sum_money = capital + profit 7 capital = sum_money 8 year += 1 9 print(capital)1、題目:打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,
其各個位上數字的立方和等于該數本身。例如:153是一個”水仙花數",
因為153=1的三次方+5的三次方+3的三次方。
?
1 import random 2 3 def func1(): 4 for i in range(1,10): 5 # print(">>",i**3) 6 for k in range(1,10): 7 for j in range(1,10): 8 a = int("%s%s%s"%(i,j,k)) 9 if i**3 + k**3 +j**3 == a: 10 print(a) 11 else: 12 pass?
2、設計“過7游戲”的程序, 打印出1-100之間除了含7和7的倍數之外的所有數字。
?
1 def func2(n): 2 for i in range(1,n+1): 3 if i%7==0 or i%10 ==7: 4 print(i)?
3、使用while,完成以下圖形的輸出。(每一行的星星不能用*乘以星星的數量來完成,須使用while嵌套)(較難)
*
***
*****
*******
*********
*******
*****
***
*
?
4、使用while、if來完成剪刀石頭布程序,要求,
當玩家第3次獲勝時才退出游戲,否則繼續玩。
?
?
5、編寫一個程序計算個人所得稅(以下為個人所得稅稅率表,3500元起征):
應納稅所得額(含稅) 稅率(%)
不超過1500元的 3
超過1500元至4,500元的部分 10
超過4,500元至9,000元的部分 20
超過9,000元至35,000元的部分 25
超過35,000元至55,000元的部分 30
超過55,000元至80,000元的部分 35
超過80,000元的部分 45
?
1 def func5(): 2 capital = int(input("請輸入你的工資>>>")) 3 temp = capital - 3500 4 if temp <= 0: 5 revenue = 0 6 elif 0< temp <= 1500: 7 revenue = temp*0.03 8 elif 1500<temp<=4500: 9 revenue = 45 + (temp-1500)*0.1 10 elif 4500<temp<=9000: 11 revenue = 345 + (temp-4500)*0.2 12 elif 9000<temp<=35000: 13 revenue = 1245 + (temp-9000)*0.25 14 elif 35000<temp<=55000: 15 revenue = 7745 + (temp-35000)*0.3 16 elif 55000<temp<=80000: 17 revenue = 13745 + (temp-55000)*0.35 18 else: 19 revenue = 22495 + (temp-80000)*0.45 20 print( revenue )?
6、幸運猜猜猜:游戲隨機給出一個0~99(包括0和99)的數字,然后讓你猜是什么數字。
你可以隨便猜一個數字,游戲會提示太大還是太小,從而縮小結果范圍。
經過幾次猜測與提示后,最終推出答案。在游戲過程中,記錄你最終猜對時所需要的次數,
游戲結束后公布結果。
說明:
1~2次猜中,打印你太TM有才了!
3~6次猜中,打印這么快就猜出來了,很聰明嘛!
大于7次猜中,打印猜了半天才猜出來,小同志,尚需努力啊!
猜測次數最多20次。(選做)
?
1 while account_2 <=10 : 2 guess = input("請輸入數字") 3 guess = int(guess) 4 5 if guess < num: 6 print("猜小了") 7 elif guess > num: 8 print("猜大了") 9 else: 10 break 11 account_2 += 1 12 13 if account_2 <= 2: 14 print("經過%s次猜對,你太TM有才了! " % account_2) 15 elif 2 < account_2 <= 6: 16 print("經過%s次猜對,這么快就猜出來了,很聰明嘛!" % account_2) 17 elif 6 < account_2 <= 10: 18 print("經過%s次猜對了,小同志,尚需努力啊!" % account_2) 19 else: 20 print("太笨了,20次都沒有猜對")?
?
7,乘法口訣表
1 #! /usr/bin/env python 2 # -*- coding: utf-8 -*- 3 # anthor:fhj 4 5 row = 1 6 while row <= 9: 7 clum = 1 8 while clum <= row: 9 print("%s * %s = %s " % (row, clum, row * clum), end="\t") 10 clum += 1 11 print() 12 row += 1 13 14 row = 9 15 while row >= 1: 16 clum = 1 17 while clum <= row: 18 print("%s * %s = %s " % (row, clum, row * clum), end="\t") 19 clum += 1 20 print() 21 row -= 1?
轉載于:https://www.cnblogs.com/cerofang/p/8720123.html
總結
以上是生活随笔為你收集整理的180405之循环嵌套的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端日刊君来也
- 下一篇: centos7安装Hive2.3.0