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