惯性积计算实例_第2课:自定义函数|计算思维在于必要的复用?!
計算思維的思考
自定義函數在計算思維
角度怎么理解?
其實就是必要!不得不!?
即使目的是為了模塊化設計,
可以讓主程序更簡潔,
但也要強調復用,
即可以重復調用,
只改改參數,
就可以方便使用,
這也是函數的真諦。
比如,階乘!
一個階乘的應用,
大可不必自定義函數,
只有找到多個階乘的應用,
自定義函數才有意義。
歡迎交流您的實例,
歡迎交流您的教學體驗:
347679968@qq.com
數學文化:階乘和數
? ? 階乘是基斯頓·卡曼(Christian Kramp,1760~1826)于 1808 年發明的運算符號,是數學術語。一個正整數的階乘(factorial)是所有小于及等于該數的正整數的積,并且0的階乘為1。自然數n的階乘寫作n!。
? ? ? ?n!=1×2×3×...×(n-1)×n。
? ? ? ?階乘亦可以遞歸方式定義:0!=1,n!=(n-1)!×n。
? ? ? ?階乘外文名factorial,階乘和數:abc=a!+b!+c!???
基礎:階乘
i=1
f=1
c=7
for? i? in range(1,c+1):
? ? f=f*i
? ? ?print(i,"!=",f)
#print縮進?!跟蹤~~
自定義函數:階乘函數
def f(c):
? i=1
? f=1
? #容錯
? if c==0:return 1
? for i in range(1,c+1):
? ? ? f=f*i
? return f
#自定義函數格式講解
#def:表示自定義函數的關鍵字
#函數名:函數的名稱,日后根據函數名調用函數
#函數體:函數中進行一系列的處理的共用代碼、復用功能,如訂單。
#參數:為函數體提供數據(傳入數據)
#返回值:return x,當函數執行完畢后,可以給調用者結果。(返回數據)如果是做事,x也不一定有用值的用途,可以是標志:成功是1,失敗是0。
#主程序測試
print(f(5))
print(f(2+3))
自定義函數的應用價值:復用
#三位數階乘和數主程序
for n in range(100,1000):
? c=n%10?#取個位數字
? b=(n//10)%10??#取十位數字
? a=n//100??#取百位數字?
? if n==f(a)+f(b)+f(c):
? ? ?print(n)
#%取余數(模),//整除? ??
#1.如何判斷4位階乘和數呢?
#2.如何構造自已的常用功能呢?例如漢英、英漢不同的自定義函數。
提高應用:遞歸
def fd(n):
? ? if(n<=1):
? ? ? ? return 1
? ? else:? ? ? ?
? ? ? ? return fd(n-1) * n?
#遞歸是函數自調用
#下一節內容,本節體驗或掌握格式
#跟蹤模型
總結
以上是生活随笔為你收集整理的惯性积计算实例_第2课:自定义函数|计算思维在于必要的复用?!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 指定jdk8_动图+源码+总结:深度解析
- 下一篇: 怎么导入字体ttf_教程小字体制作精品教