第一篇:VFP-04-06-變量作用域、自定義函數(shù)匯總(定稿)
VFP-04-06變量作用域、自定義函數(shù).doc 8-1 變量作用域、自定義函數(shù)
4.5.3 內(nèi)存變量的作用域
變量的作用域:變量的作范圍。程序由模塊(主、子程序)組成,模塊中有內(nèi)存變量,內(nèi)存變量有作用范圍。變量的作用域,從定義變量處開始,一直向下。
1.定義全局內(nèi)存變量
全局變量既可以是單個(gè)變量,也可以是數(shù)組。分別以下列格式定義。
格式1:Public <內(nèi)存變量表> 格式2:Public <數(shù)組名1>(上界1[,上界2[,...])[,?] 功能:定義全局變量。
①<內(nèi)存變量表>中既可含普通變量,也可含數(shù)組。
②全局變量不會自動釋放。只能用release命令顯式釋放,或退出VFP。③VFP命令窗口中定義的變量,默認(rèn)為全局變量。④全局?jǐn)?shù)組的每個(gè)元素都是全局的。
第116頁,例 4.35 主程序中使用子程序中定義的全局變量。*文件名Main.prg set talk off clear clear memory &&清除所有內(nèi)存變量 I=2 &&默認(rèn)是私有的 Do ABC ?“主程序中的輸出結(jié)果:” ?“I=”+str(I,2)+“ J=”+str(J,2)set talk on return *---------------------Procedure ABC public J J=I*8 J=J+5 ?“過程中的輸出結(jié)果:” ?“I=”+str(I,2)+“ J=”+str(J,2)return 小提示:要檢測全局變量,請先clear memory以排除干擾。
2.定義局部內(nèi)存變量
(1)什么叫局部?
更小的范圍就是局部。對于一個(gè)模塊,更后的部分是局部。對于主程序,子程序是局部。
(2)Private定義局部變量 VFP-04-06變量作用域、自定義函數(shù).doc 8-2 格式1:Private <內(nèi)存變量表> 格式2:Private <數(shù)組名1>(上界1[,上界2[,...])[,?] 功能:定義局部變量。
①未經(jīng)定義的變量,默認(rèn)是局部(Private)的。
③無論全局還是局部變量,無初值的,一律自動賦初值.F.。③局部變量作用域的子模塊擴(kuò)展規(guī)則
Private變量的作用域,通過調(diào)用子模塊而擴(kuò)展到子模塊中。
圖4-20 Private變量作用域子模塊擴(kuò)展規(guī)則
第117頁,例 4.36 子程序中的局部變量,在主程序中找不到。R=100 &&默認(rèn)為Private變量 Do Sub1 &&調(diào)用子程序
?P &&主程序中找不到這個(gè)變量 Return *-------------------procedure Sub1 P=2*3.14*R &&主程序中的Private變量,子程序中可用 return 3.Private隱藏內(nèi)存變量的功能
(1)同名變量就近使用規(guī)則(原理)
程序中,對于同名的變量,默認(rèn)使用最近的。因此,①字段變量(因?yàn)樵诋?dāng)前工作區(qū)內(nèi))優(yōu)先于(即隱藏)同名內(nèi)存變量; 注:什么叫隱藏?就是被遮住,看不見,用不上。
圖4-22 字段變量隱藏同名內(nèi)存變量
例如 use student.dbf use student.dbf VFP-04-06變量作用域、自定義函數(shù).doc 8-3 ?學(xué)號 &&結(jié)果是字段變量“學(xué)號”值,如“960106” 學(xué)號=“abcd” &&“=”號賦值,只給內(nèi)存變量賦值 ?學(xué)號 &&結(jié)果還是優(yōu)先使用字段變量
?m.學(xué)號 &&特別用“m.”指明內(nèi)存變量,結(jié)果才是“abcd” ②同一模塊內(nèi),小局部存變量優(yōu)先于(即隱藏)大局部同名內(nèi)存變量;
圖4-23 Private變量隱藏同模塊同名變量
③不同模塊中,子模塊局部內(nèi)存變量優(yōu)先于(即隱藏)主模塊同名內(nèi)存變量。
圖4-26 用Private隱隱藏變量
小提示:主程序中的private變量,子程序同樣可以用private屏蔽。(3)為什么大范圍定義的局部變量,小范圍中再定義為全局變量會出錯(cuò)? 因?yàn)槟菢樱cPrivate的隱藏功能相矛盾。
第118頁,例 4.37 子程序中的同名局部變量隱藏主程序中同名變量。R=100 &&默認(rèn)為Private變量 P=10 &&默認(rèn)為Private變量 Do Sub2 &&調(diào)用子程序
?P &&仍是主程序中的值 Return *-------------------procedure Sub2 Private P &&局部變量,主程序中的同名變量被屏蔽 P=2*3.14*R &&主程序中的Private變量,子程序中可用 Return *(5)有沒有不通過子程序擴(kuò)展作用域的變量?
VFP-04-06變量作用域、自定義函數(shù).doc 8-4 有,Local變量,即本地變量。如:Local x,y,z。小提示:采用Local變量,是向C語言靠攏。
4.調(diào)用過程時(shí)的數(shù)據(jù)傳遞
教學(xué)提示:VFP的參數(shù)傳遞,過程中默認(rèn)傳址,函數(shù)中默認(rèn)傳值。向過程傳遞數(shù)據(jù),有兩種方法。
(1)利用Private變量的作用域擴(kuò)展規(guī)則,不傳而傳
過程中,可以直接使用主程序中的Private變量,不必傳。第118頁,例 4.38 計(jì)算矩形面積。G=8 &&長 K=6 &&寬 mj=0 &&面積 do sub3 ?Mj return *--------------procedure sub3 mj=G*K return(2)在過程第一句用Parameters接收參數(shù)
主程序中傳出參數(shù)格式:Do <過程名> With <實(shí)際參數(shù)表> 子程序中接收參數(shù)格式: Parameters <內(nèi)存變量表> 說明:
①子程序中,Parameters必須是第一句。Parameters變量是Private變量。②傳值:Parameters后的變量與主程序中對應(yīng)的實(shí)際參數(shù)無關(guān)。
③傳引用:Parameters后的變量與主程序中對應(yīng)的實(shí)際參數(shù)是同一個(gè)變量,名稱可能不同而已,同時(shí)變化。
④引用隱藏實(shí)參規(guī)則
子模塊中,引用參數(shù)隱藏實(shí)際參數(shù),是因?yàn)橐脜?shù)與實(shí)際參數(shù)是同一個(gè)變量,只是在子模塊中另取了一個(gè)名字(別名)而已。因此,原來的實(shí)際參數(shù)被隱藏,才不會混亂,包括實(shí)際參數(shù)是Public變量的情況。
⑤如何決定傳值、傳地址?由實(shí)際參數(shù)決定。過程的實(shí)際參數(shù)默認(rèn)引用。要傳值須實(shí)際參數(shù)加“()”,或者寫成表達(dá)式。VFP-04-06變量作用域、自定義函數(shù).doc 8-5
圖4-27 傳值與傳引用
第119頁,例 4.39 寫程序運(yùn)行結(jié)果。set talk off x=1 y=3 do sub4 with x,(y),5 ?x,y return *----------------Procedure sub4 parameters a,b,c a=a+b+c b=a+b-c return &&答: 9, 3 第120頁,例 4.40 利用一個(gè)過程計(jì)算矩形面積,要求在主程序輸出該面積值。set talk off clear input “矩形長:” to L input “矩形寬:” to W S=0 do Area with L,W,S ?“矩形面積:”,S return *--------------Procedure Area Parameters C,K,M M=C*K return
4.5.4 自定義函數(shù) VFP-04-06變量作用域、自定義函數(shù).doc 8-6 1.自定義函數(shù)的結(jié)構(gòu)
自定義函數(shù)實(shí)際上是一個(gè)過程,只不過其Return語句后帶有表達(dá)式,能向主函數(shù)返回值。
格式:
Function <函數(shù)名> [Parameters <形式參數(shù)表>] <語句序列> Return [<表達(dá)式>] 說明:
①缺省[<表達(dá)式>]返回.T.。
②與過程一樣,自定義函數(shù),可以單獨(dú)以同名程序文件存儲,也可以存入過程文件中。
2.自定義函數(shù)的調(diào)用
小提示:過程中叫實(shí)際參數(shù)的,函數(shù)中叫自變量。格式:[[因變量]=] <函數(shù)名>(自變量表)說明:
函數(shù)查找規(guī)則
調(diào)用函數(shù)時(shí),先在內(nèi)部函數(shù)中找;找不到再到打開的過程文件中找;再找不到,在當(dāng)前文件夾中找;再找不到,出錯(cuò)。
①若自定義函數(shù)與內(nèi)部函數(shù)同名,將不被找到,用不到。②參數(shù)表要與自變量表相對應(yīng),包括類型和個(gè)數(shù)。
③自變量表中,可以是變量,也可以是表達(dá)式。自變量默認(rèn)傳值。要傳引用,須在自變量前面加“@”,或SET UDFPARMS TO REFERENCE設(shè)置默認(rèn)為傳引用。
④函數(shù)可以當(dāng)過程用,調(diào)用格式為“do <函數(shù)名> with 自變量表”。但要注意,當(dāng)過程用時(shí),默認(rèn)傳引用,因?yàn)檫^程默認(rèn)傳引用;且放棄返回值。
小提示:自變量默認(rèn)傳值,是向C語言靠攏。小提示:過程默認(rèn)傳引用,函數(shù)默認(rèn)傳值。第122頁,例 4.41 定義一個(gè)函數(shù),將day()日期轉(zhuǎn)成“公元 年 月 日”格式。Y=DA()?Y return *-------------Function DA D=“公元”+LTRIM(STR(YEAR(DATE())))+“年” D=D+LTRIM(STR(MONTH(DATE())))+“月” D=D+LTRIM(STR(DAY(DATE())))+“日” Return D 第122頁,例 4.42 用自定義函數(shù)計(jì)算組合數(shù)。VFP-04-06變量作用域、自定義函數(shù).doc 8-7 m!
n!(m?n)!y=c(5,3)?y return *-------------------Function FAC &&階乘factor parameters x f=1 for k=1 to x f=f*k endfor return f *-------------------Function C &&組合數(shù)conbination parameters m,n y=int(FAC(m)/(FAC(n)*FAC(m-n)))return y C(m,n)?*附加 4.5.5 自定義函數(shù)的括號參數(shù)格式
“()”在VFP中是間接引用符,有傳值之意。
1.自函數(shù)的“()式”結(jié)構(gòu)
格式:
Function <函數(shù)名>([<參數(shù)表>])<語句序列> Return [<表達(dá)式>] 說明:這是自定義函數(shù)的另一種格式。它只是將Function行和Parameter行合并成一行,其它并無差別;其調(diào)用方式也沒有區(qū)別。
小提示:表單自定義函數(shù)不能用括號參數(shù)格式,故一般不學(xué)、不用。例 自定義函數(shù)fun1(x,y,z),分別將其當(dāng)過程和“()式”函數(shù)調(diào)用。A=123 B=234 C=“abc” clear do fun1 with A,(B),C &&當(dāng)過程用,默認(rèn)傳引用,但B傳值 ?“A=”,A,“B=”,B,“C=”,C D=fun1(A,@B,@C)&&當(dāng)函數(shù)用,默認(rèn)傳值,但B和C傳引用 ?“D=”,D Return *-------------------VFP-04-06變量作用域、自定義函數(shù).doc 8-8 Function fun1(X,Y,Z)x=x+10000 y=y+10000 z=z+“12345” return X+Y
第二篇:vba自定義函數(shù)小結(jié)
小結(jié):
函數(shù)參數(shù)前面標(biāo)記byval,實(shí)現(xiàn)的是實(shí)參與形參之間的值傳遞,即形參具有了實(shí)參的值或者說建立了一個(gè)實(shí)參的副本給了形參,這樣對形參的操作不會影響實(shí)參;
函數(shù)參數(shù)前面標(biāo)記byref,實(shí)現(xiàn)的是實(shí)參與形參之間的引用傳遞,這樣對形參的操作會影響實(shí)參,或者說對形參的操作等同于對實(shí)參的操作;
在函數(shù)內(nèi)部使用“r=形參”,實(shí)現(xiàn)的是把形參的副本給r,在函數(shù)中對r操作不會影像形參,如果使用“set r=形參”,那么對r的操作會影響形參,這里實(shí)現(xiàn)的效果是r只是形參的一個(gè)別名而已,所以對r的操作等同于對形參的操作。
在函數(shù)中形參前面不標(biāo)記byref和byval,默認(rèn)是引用傳遞byref,但是這種情況下如果實(shí)參是excel中worksheet的range區(qū)域,則默認(rèn)是值傳遞。
有時(shí)調(diào)試結(jié)果不符合預(yù)期,比如值傳遞,對””r=形參”中的r操作,居然影響形參了,這可能是由于excel一時(shí)程序錯(cuò)亂導(dǎo)致,關(guān)閉重啟就好了。
Public Function tjbcf(rng)
r = rng
'Set r = rng'注意帶著set是錯(cuò)誤的 k = 0 If UBound(r, 1)> 1 And UBound(r, 2)= 1 Then For i = 1 To UBound(r, 1)f = 0 For j = 1 To i1 If r(1, i)= r(1, j)Then f = 1 Exit For End If Next j If f = 0 And r(1, i)<> “" Then k = k + 1 End If Next i End If
If UBound(r, 1)> 1 And UBound(r, 2)> 1 Then For i = 1 To UBound(r, 1)For j = 1 To UBound(r, 2)If r(i, j)= ”“ Then f = 1 GoTo kk End If f = 0 For m = 1 To i1 If r(i, j)= r(i, n)Then f = 1 GoTo kk End If Next n kk: If f = 0 Then k = k + 1 End If Next j Next i End If
tjbcf = k
End Function
Public Function getnum(str, m)ss = ”“ For i = m To Len(str)If InStr(”0123456789.“, Mid(str, i, 1))<> 0 Then ss = ss & Mid(str, i, 1)Else GoTo kk End If Next i kk: getnum = Val(ss)'注意是val不是value,在sheet中是value函數(shù),在vb中則是val函數(shù) End Function Public Function getnum2(str, m)ss = ”“ f = 0 For i = m To Len(str)If InStr(”0123456789.“, Mid(str, i, 1))<> 0 Then ss = ss & Mid(str, i, 1)Else If f = 1 And ss <> ”“ Then GoTo kk End If f = 1 End If Next i kk: getnum2 = Val(ss)End Function
Public Function NewMmult(a, b)
a1 = a
'把range a的值賦給a1,a是幾行幾列的range,a1就是 幾行幾列的數(shù)組。注意a1是一個(gè)variant數(shù)組,即a1中的不同元素可以屬性不同,a1中某個(gè)元素是字符,另一個(gè)可以是整數(shù)。
b1 = b
'把range b的值賦給b1 For i = 1 To UBound(a1, 1)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) For j = 1 To UBound(a1, 2)
' UBound(a1, 2)指的是數(shù)組a1第2維度的大小,即a1的列數(shù) If a1(i, j)= ”“ Then
'判斷a1(i,j)是不是空白,如果是,那就賦0值。a1(i, j)= 0 End If Next j Next i
For i = 1 To UBound(b1, 1)For j = 1 To UBound(b1, 2)If b1(i, j)= ”“ Then b1(i, j)= 0 End If Next j Next i
NewMmult = Application.MMult(a1, b1)
End Function
Public Function sim(str1, str2)
If Len(str2)= 0 Then
sim = 0
GoTo kk
End If
sim = 0
For i = 1 To Len(str2)
If InStr(str1, Mid(str2, i, 1))<> 0 Then
sim = sim + 1
End If
Next i
sim = sim / Len(str2)kk: End Function Public Function sima(ByVal str1, ByVal str2)
If Len(str2)= 0 Then
sima = 0
GoTo kk
End If
sima = 0
l = Len(str2)
For i = 1 To Len(str2)
If InStr(str1, Mid(str2, i, 1))<> 0 Then
sima = sima + 1
str1 = Application.WorksheetFunction.Substitute(str1, Mid(str2, i, 1), ”“, 1)
End If
Next i
sima = sima / l kk: End Function
Public Function mcc(rng, rng1, str1, Optional rng2 = ”“, Optional str2, Optional rng3 = ”“, Optional str3, Optional rng4 = ”“, Optional str4, Optional rng5 = ”“, Optional str5)r = rng r1 = rng1 r2 = rng2 r3 = rng3 r4 = rng4 r5 = rng5 mcc = ”“
If Application.CountA(rng2)= 1 Then For i = 1 To UBound(r, 1)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(i, 1)= str1)Then mcc = r(i, 1)GoTo kk End If Next i End If
If Application.CountA(rng3)= 1 Then For i = 1 To UBound(r, 1)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(i, 1)= str1, r2(i, 1)= str2)Then mcc = r(i, 1)GoTo kk End If Next i End If
If Application.CountA(rng4)= 1 Then For i = 1 To UBound(r, 1)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(i, 1)= str1, r2(i, 1)= str2, r3(i, 1)= str3)Then mcc = r(i, 1)GoTo kk End If Next i End If
If Application.CountA(rng5)= 1 Then For i = 1 To UBound(r, 1)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(i, 1)= str1, r2(i, 1)= str2, r3(i, 1)= str3, r4(i, 1)= str4)Then mcc = r(i, 1)GoTo kk End If Next i End If
For i = 1 To UBound(r, 1)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(i, 1)= str1, r2(i, 1)= str2, r3(i, 1)= str3, r4(i, 1)= str4, r5(i, 1)= str5)Then mcc = r(i, 1)GoTo kk End If Next i
kk: End Function
Public Function mccd(rng, rng1, str1, Optional rng2 = ”“, Optional str2, Optional rng3 = ”“, Optional str3, Optional rng4 = ”“, Optional str4, Optional rng5 = ”“, Optional str5)
r = rng r1 = rng1 r2 = rng2 r3 = rng3 r4 = rng4 r5 = rng5 mccd = ”"
If Application.CountA(rng2)= 1 Then
For i = 1 To UBound(r, 2)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(1, i)= str1)Then
mccd = r(1, i)GoTo kk End If Next i End If
If Application.CountA(rng3)= 1 Then For i = 1 To UBound(r, 2)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(1, i)= str1, r2(1, i)= str2)Then mccd = r(1, i)GoTo kk End If Next i End If
If Application.CountA(rng4)= 1 Then For i = 1 To UBound(r, 2)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(1, i)= str1, r2(1, i)= str2, r3(1, i)= str3)Then mccd = r(1, i)GoTo kk End If Next i End If
If Application.CountA(rng5)= 1 Then For i = 1 To UBound(r, 2)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(1, i)= str1, r2(1, i)= str2, r3(1, i)= str3, r4(1, i)= str4)Then mccd = r(1, i)GoTo kk End If Next i End If
For i = 1 To UBound(r, 2)
' UBound(a1, 1)指的是數(shù)組a1第1維度的大小,即a1的行數(shù) If Application.WorksheetFunction.And(r1(1, i)= str1, r2(1, i)= str2, r3(1, i)= str3, r4(1, i)= str4, r5(1, i)= str5)Then mccd = r(1, i)GoTo kk End If Next i
kk: End Function
Public Function nsim(str, rng)'r1 = rng 'r2 = rng 'str1 = str 'str2 = str
v = sima(str, r(1, 1))+ sima(r(1, 1), str2)'str1 = str
‘這里不再需要賦值,因?yàn)閟ima設(shè)置的是值傳遞byval,sima調(diào)用實(shí)參str和r(1,1)不影響實(shí)參。'str2 = str k = 1 For i = 2 To UBound(r, 1)m =(sima(str, r(i, 1))+ sima(r(i, 1), str))'str1 = str 'str2 = str If v < m Then k = i v = m End If Next i nsim = r(k, 1)End Function
第三篇:變量與函數(shù)教學(xué)反思
《變量與函數(shù)》的教學(xué)反思
許小平
通過《變量與函數(shù)》的教學(xué),本人對概念課的教學(xué)設(shè)計(jì)與教學(xué)實(shí)踐有了更深入的了解.
本設(shè)計(jì)呈現(xiàn)的課堂結(jié)構(gòu)為:(1)揭示學(xué)習(xí)目標(biāo);(2)引入數(shù)學(xué)原型;(3)抽象出數(shù)學(xué)現(xiàn)實(shí),逐步達(dá)致數(shù)學(xué)形式化的概念;(4)鞏固概念練習(xí)(概念辨析);(5)小結(jié)(質(zhì)疑).
一、如何揭示學(xué)習(xí)目標(biāo)
概念課的引入要考慮學(xué)生關(guān)心的如下問題:這節(jié)課學(xué)什么概念?為什么要學(xué)這樣的概
念?數(shù)學(xué)源于生活而高于生活,數(shù)學(xué)概念的引入可從生活的需要、數(shù)學(xué)的需要等方面引入.初中涉及的函數(shù)概念的核心是“量與量之間的特殊對應(yīng)關(guān)系”.本課中,本人在導(dǎo)言中提出兩個(gè)問題:“引例1,《名偵探柯南》中有這樣一個(gè)情景:柯南根據(jù)案發(fā)現(xiàn)場的腳印,鎖定疑犯的身高.你知道其中的道理嗎?”、“引例2.我們班中同學(xué)A與職業(yè)相撲運(yùn)動員,誰的飯量大?你能說明理由嗎?”學(xué)生對上述問題既熟悉又感到意外.問題1涉及兩個(gè)量的關(guān)系,腳印確定,對應(yīng)的身高有多個(gè)取值;問題2涉及多個(gè)量的關(guān)系.上述問題,不僅僅是引起學(xué)生的注意,更重要的是讓學(xué)生了解客觀世界中量與量之間聯(lián)系的多樣性、復(fù)雜性,而函數(shù)研究的正是量與量之間的各種關(guān)系中的“特殊關(guān)系”.?dāng)?shù)學(xué)研究有時(shí)從最簡單、特殊的情況入手,化繁為簡.讓學(xué)生明確,這一節(jié)課我們只研究兩個(gè)量之間的特殊對應(yīng)關(guān)系.“特殊在什
么地方?”學(xué)生需帶著這樣的問題開始這一課的學(xué)習(xí).概念的引入應(yīng)具有“整體觀”,不僅要提供符合函數(shù)原型的單值對應(yīng)的實(shí)例,還應(yīng)提供其他的量與量之間關(guān)系的實(shí)例(如多個(gè)量的對應(yīng)關(guān)系、兩個(gè)量間的“一對多”關(guān)系等),使學(xué)生在更廣泛的背景中經(jīng)歷篩選、提煉出新的數(shù)學(xué)知識的過程,逐步領(lǐng)悟“化繁為簡”的數(shù)學(xué)研究方法.當(dāng)然,這里的問題是作為研究“背景”呈現(xiàn),教學(xué)時(shí)應(yīng)作“虛化”處理,以突出主要內(nèi)容.
二、如何選取合適的數(shù)學(xué)原型
從數(shù)學(xué)的“學(xué)術(shù)形態(tài)”看,數(shù)學(xué)原型所蘊(yùn)藏的數(shù)學(xué)素材應(yīng)與數(shù)學(xué)概念的內(nèi)涵相一致;從數(shù)學(xué)的“教育形態(tài)”看,數(shù)學(xué)原型應(yīng)真實(shí)、簡潔、簡單.真實(shí)指的是基于學(xué)生的生活現(xiàn)實(shí)、數(shù)學(xué)現(xiàn)實(shí),它可以是生活中的實(shí)例,也可以是學(xué)生熟悉的動漫故事、童話故事等.簡潔、簡單指的是問題的表述應(yīng)簡潔,問題情境的設(shè)置要盡可能簡單,全體學(xué)生對情境中的問題不應(yīng)存在太大的理解困難,設(shè)計(jì)的問題情境要能突出將要學(xué)習(xí)的新知識的本質(zhì).本設(shè)計(jì)采用了三個(gè)數(shù)學(xué)原型的問題:問題1,“票房收入與售出票數(shù)問題”(可用解析式表示);問題2,成績登記表中的一次數(shù)學(xué)測試的“成績與學(xué)號問題”(表格表示);問題3,“氣溫變化與時(shí)間問題”(圖象表示).這三個(gè)問題從不同層面、不同角度體現(xiàn)函數(shù)的“單值對應(yīng)關(guān)系”,也都是學(xué)生生活中的真實(shí)問題,問題簡單易懂,學(xué)生容易基于上述生活實(shí)例抽象出新的數(shù)學(xué)
概念.由于不少學(xué)生在理解“彈簧問題”時(shí)面臨列函數(shù)關(guān)系式的困難,可能沖淡對函數(shù)概念的學(xué)習(xí),故本節(jié)課沒有采用該引例。對于繁難的概念,我們更應(yīng)注重為學(xué)生構(gòu)建學(xué)生所熟悉的、簡單的數(shù)學(xué)現(xiàn)實(shí),化繁為簡、化抽象為形象.過難、過繁的背景會成為學(xué)生學(xué)習(xí)抽象新概念的攔路虎.
三、如何引領(lǐng)學(xué)生經(jīng)歷數(shù)學(xué)化、形式化的過程
“數(shù)學(xué)教學(xué)是數(shù)學(xué)活動的教學(xué)”,面對抽象的數(shù)學(xué)內(nèi)容,老師會想方設(shè)法創(chuàng)設(shè)易于學(xué)生理解的數(shù)學(xué)情境.但如何從具體的實(shí)例中提煉出數(shù)學(xué)的素材、形式化為數(shù)學(xué)知識是教學(xué)的關(guān)鍵環(huán)節(jié).從具體情境到數(shù)學(xué)知識的形式化,需要教師為學(xué)生搭建合適的“腳手架”,提出能引發(fā)學(xué)生思考、過渡到數(shù)學(xué)形式化的問題.本人在學(xué)生完成問題情境的幾個(gè)問題后,提出系列問題“上述幾個(gè)問題中,分別涉及哪些量的關(guān)系?哪些量的變化會引會另一個(gè)量的變化?
通過哪一個(gè)量可以確定另一個(gè)量?”在與學(xué)生的交流過程中把重點(diǎn)內(nèi)容板書,板書注重揭示兩個(gè)量間的關(guān)系,引領(lǐng)學(xué)生經(jīng)歷數(shù)學(xué)概念的形成過程,引導(dǎo)學(xué)生認(rèn)識為什么要引進(jìn)變量、常量.由問題1~3的共性“單值對應(yīng)關(guān)系”與“腳印與身高”問題中反映的“一對多關(guān)系”進(jìn)行對比抽象出函數(shù)的概念,逐步了解如何給數(shù)學(xué)概念下定義,并理解概念的本質(zhì)特征.
四、如何引用反例
學(xué)生對概念的理解需要經(jīng)歷一個(gè)從模糊到清晰的過程,通過正例與反例的對照,才能準(zhǔn)確理解概念的內(nèi)涵.反例引用的時(shí)機(jī)、反例的量要恰到好處.過早、過多的反例會干擾學(xué)生
對概念的準(zhǔn)確理解.概念生成的前期提供的各種量的關(guān)系中的實(shí)例提供的是一個(gè)更為廣泛的背景,讓學(xué)生經(jīng)歷從各種關(guān)系中抽象出“特殊的單值對應(yīng)關(guān)系”,從而體會產(chǎn)生函數(shù)概念的背景.這樣的引入有利于避免概念教學(xué)中“一個(gè)定義,三點(diǎn)注意”的傾向.
在備課時(shí),我想從“氣溫問題”中的函數(shù)圖象引導(dǎo)學(xué)生發(fā)現(xiàn)時(shí)間t取定一個(gè)值時(shí),所得T的對應(yīng)值只有一個(gè),學(xué)生習(xí)慣性地提出問題“溫度T取定一個(gè)值時(shí),時(shí)間t 是否唯一確定?”全體同學(xué)從正反兩個(gè)方面認(rèn)識“唯一確定”的含義,在這樣的基礎(chǔ)上再歸納出函數(shù)的定義,學(xué)生較好地掌握函數(shù)中的單值對應(yīng)關(guān)系.而在班上實(shí)際上課時(shí),在概念的形成前期,忙中出漏,沒有抓住“氣溫問題”中的函數(shù)圖象講解“唯一確定”,特別是沒有從反面(溫度T=8,時(shí)間t=12~14)幫助學(xué)生理解“唯一性”,也沒有強(qiáng)化“腳印與身高”反映的“一對多關(guān)系”,只在涉及“單值對應(yīng)關(guān)系”的實(shí)例基礎(chǔ)上引出概念,也跳過后面提到的三個(gè)反例,學(xué)生在后面的概念辨析練習(xí)中錯(cuò)漏較多,為糾正學(xué)生的理解花了九牛二虎之力.
第四篇:變量與函數(shù)教學(xué)設(shè)計(jì)
變量與函數(shù)教學(xué)設(shè)計(jì)
淦田鎮(zhèn)中學(xué)
黃軍
教學(xué)內(nèi)容: 湘教版八年級下冊第四章第一節(jié)“函數(shù)和它的表示法”第一小節(jié)“變量與函數(shù)”。教學(xué)目標(biāo)
1.知識與技能目標(biāo):運(yùn)用豐富的實(shí)例,使學(xué)生在具體情境中領(lǐng)悟函數(shù)概念,了解常量與變量的含義,能分清實(shí)例中的常量與變量,了解自變量與函數(shù)的意義。
2.過程與方法目標(biāo): 引導(dǎo)學(xué)生探索實(shí)際問題中的數(shù)量關(guān)系, 經(jīng)歷觀察、比較、發(fā)現(xiàn)、交流、歸納等過程, 在解決問題的過程中體會數(shù)學(xué)的應(yīng)用價(jià)值, 并由感性認(rèn)識逐漸過渡到理性認(rèn)識。
3.情感、態(tài)度與價(jià)值觀目標(biāo): 在常量與變量概念形成的過程中, 培養(yǎng)學(xué)生對學(xué)習(xí)數(shù)學(xué)的興趣和積極參與數(shù)學(xué)活動的熱情。學(xué)生在解決問題的過程中體會數(shù)學(xué)的應(yīng)用價(jià)值并感受成功的喜悅, 建立自信心。
教學(xué)重點(diǎn):自變量與函數(shù)的概念。教學(xué)難點(diǎn):函數(shù)概念的抽象與概括. 教學(xué)方法 教師啟發(fā)引導(dǎo), 學(xué)生合作探究。教學(xué)流程安排
活動 1.創(chuàng)設(shè)情境(感受變化): 通過播放視頻, 讓學(xué)生感受生活中一些量的變化。
活動 2.交流互動(形成概念):通過三個(gè)實(shí)例的分析, 讓學(xué)生初步認(rèn)識變量常量, 得出變量常量的概念。活動3.鞏固練習(xí)講解例題(加深理解):通過練習(xí)進(jìn)一步理解變量與常量概念, 活動 4.小結(jié)及升華: 通過對所學(xué)內(nèi)容的回顧, 加深對變量與常量概念的理解,滲透由具體到抽象的數(shù)學(xué)研究方法。教學(xué)過程
一、創(chuàng)設(shè)情境,引入新課
師:我給大家?guī)砹艘欢我曨l,與大家一起分享(師生一起欣賞多媒體播放的《烏鴉喝水》)師:大家觀看后有什么感想
生1;烏鴉真聰明,用投石子的方法。
生2:它發(fā)現(xiàn)瓶口太小,水面又太低,扔石塊可以提高水位,而且發(fā)現(xiàn)扔一塊石塊不夠,需多扔幾塊.師:在這個(gè)片斷中哪些是不能改變的,哪些是可以變化的? 學(xué)生可能討論得出: 1.瓶口的大小不可改變,瓶中水的高度是可以改變的;2.投的石塊越多,水面就越高.師:這兩點(diǎn)就是我們要學(xué)習(xí)的常量與變量及函數(shù)關(guān)系.(板書課題:變量與函數(shù))
二、實(shí)踐體驗(yàn),探索概念
問題1(首先顯示)一個(gè)水波紋動畫,顯示一滴落在平靜的水面上觀察變化。
圓的面積公式S=πr2,請取r的一些不同的值,算出相應(yīng)的S的值.(1)r= cm,S= cm2(2)r= cm,S= cm2(3)r= cm,S= cm2(4)r= cm,S= cm2 問:在計(jì)算半徑不同的圓的面積的過程中,哪些量在改變?哪些量不變? 生1:r,S在改變,π不變.問題2.下圖這是北京某日氣象站用自動溫度記錄儀描出的某一天的溫度曲線,它反映了該地某一天的氣溫T(℃)是如何隨時(shí)間t的變化而變化的,你能從圖中得到哪些信息?
(1)這天的8時(shí)的氣溫是 ℃,14時(shí)的氣溫是 ℃,22時(shí)的氣溫是 ℃;
(2)這一天中,最高氣溫是 ℃,最低氣溫是 ℃;(3)這一天中,什么時(shí)段的氣溫在逐漸升高?什么時(shí)段的氣溫在逐漸降低?
小結(jié):天氣溫度隨 的變化而變化,即T隨 的變化而變化;
問題3票房收入問題: 出示一段音頻(鄧紫棋泡沫)師:這段音頻知道是哪位歌手唱的嗎? 生:齊聲鄧紫棋(同時(shí)顯示鄧紫棋圖片)
師,鄧紫棋為了回饋歌迷朋友對她的喜愛,決定舉行一場歌友會。每張演唱會的售價(jià)為100元.(1)若一場售出1500張演唱會,則該場的票房收入是 元;
(2)若一場售出2050張演唱會,則該場的票房收入是 元;
(3)若設(shè)一場售出x張演唱會,票房收入為 y元,則y=。
師:當(dāng)中哪些量是變化的?是如何變化的?
小結(jié):票房收入隨售出的演唱會數(shù)變化而變化,即 y隨 的變化而變化; 1變量與常量概念
通過與同學(xué)們的交流討論,我們清楚地認(rèn)識到,要想尋求事物變化過程的規(guī)律,首先需確定在這個(gè)過程中哪些量是變化的,而哪些量又是不變的.在一個(gè)變化過程中,我們稱數(shù)值發(fā)生變化的量為變量(variable),那么數(shù)值始終不變的量稱之為常量(constant).如上述過程中,售出票數(shù)x、票房收入y、半徑r、面積s時(shí)間t,氣溫T都屬于變量;而票價(jià)100元,Π??都是常量.
強(qiáng)調(diào)注意:常量與變量必須存在與一個(gè)變化過程中。判斷一個(gè)量是常量還是變量,需這兩個(gè)方面:①看它是否在一個(gè)變化的過程中;②看它在這個(gè)變化過程中的取值情況。
2函數(shù)的概念
在探索變量間變化規(guī)律時(shí),可利用以前學(xué)過的一些有關(guān)知識公式進(jìn)行分析尋找,以便盡快找出之間關(guān)系,確定關(guān)系式.一般地,在一個(gè)變化過程中有兩個(gè)變量x與y,如果對于x每一個(gè)值,y都有唯一的值與它對應(yīng),那么就說x是自變量,y是因變量,此時(shí)也稱 y是x的函數(shù)。記作y=f(x)
3反復(fù)提煉,歸納定義
師:在前面的三個(gè)問題中,同一個(gè)問題中的兩個(gè)變量之間有什么聯(lián)系呢?請同學(xué)們交流一下.(回放前面問題1,問題2,問題3)1.第一個(gè)例子中,圓的半徑是,圓的面積是半徑的。
2.第二個(gè)例子中,是自變量,是 的函數(shù)。
3.第三個(gè)例子中,是自變量,是 的函數(shù)。
強(qiáng)調(diào):在考慮兩個(gè)變量間的函數(shù)時(shí),還要注意自變量的取值范圍.如上述第2個(gè)問題中,自變量t的取值范圍是0≤t≤24;而第1、3個(gè)問題中,自變量x的取值范圍分別是x>0,x≥0.三、例題講解
如圖4-2,已知圓柱的高是4cm,底面半徑是r(cm),當(dāng)圓柱的底面半徑r由小變大時(shí),圓柱的體積V()是r的函數(shù).(1)用含r 的代數(shù)式來表示圓柱的體積V,指出自變量r 的取值范圍.(2)當(dāng)r = 5,10時(shí),V是多少(結(jié)果保留π)? 學(xué)生分組討論“交流”說出各自得到的結(jié)論,最后師生共同歸 納,得出:
四、鞏固應(yīng)用,內(nèi)化新知
1指出下列變化過程中,哪個(gè)變量隨著另一個(gè)變量的變化而變化?
(1)一輛汽車以80 km/h 的速度勻速行駛,行駛的路程s(km)與行駛時(shí)間t(h);
(2)圓的半徑r和圓面積S滿足:(3)銀行的存款利率P與存期t.2.如圖,A港口某天受潮汐的影響,24小時(shí)內(nèi)港 口水深h(m)隨時(shí)間t(時(shí))的變化而變化.五、小結(jié)梳理,歸納升華 1你能出一個(gè)生活中有關(guān)函數(shù)的例子嗎?
2函數(shù)與我們以前學(xué)的數(shù)一樣嗎?它有什么特點(diǎn)?
六、古詩游戲
(顯示)古詩中的常量和變量: 回鄉(xiāng)偶書 少小離家老大回, 鄉(xiāng)音無改鬢毛衰;兒童相見不相識, 笑問客從何處來.師生共同分析:作者年齡在變,容貌在變,但鄉(xiāng)音始終未變———表達(dá)出作者對家鄉(xiāng)懷有深厚的感情.
第五篇:變量與函數(shù)教學(xué)設(shè)計(jì)
《變量與函數(shù)》教學(xué)設(shè)計(jì)
中峰鎮(zhèn)中心學(xué)校
王君
【學(xué)習(xí)目標(biāo)】
1、認(rèn)識變量、常量、會用一個(gè)變量的代數(shù)式表示另一個(gè)變量,2、認(rèn)識變量中的自變量與函數(shù),了解自變量與函數(shù)的意義及關(guān)系,3、會確定函數(shù)解析式和自變量的取值范圍。【學(xué)習(xí)重點(diǎn)】 理解函數(shù)的意義 【學(xué)習(xí)難點(diǎn)】 理解函數(shù)的意義 【學(xué)習(xí)過程】 課前導(dǎo)入
我們都知道用字母可以表示數(shù),現(xiàn)在我們用x、y兩個(gè)字母來表示任意實(shí)數(shù),請一名同學(xué)賦予x任意一個(gè)值,老師說出一個(gè)與之對應(yīng)的y值,探究x、y之間有什么樣的關(guān)系。(y=2x)引出課題:變量與函數(shù) 出示學(xué)習(xí)目標(biāo) 知識探究一:變量與常量
課前導(dǎo)入中我們得到了一個(gè)關(guān)于x、y的關(guān)系式y(tǒng)=2x,在這個(gè)關(guān)系式中,有哪些量是可以變化的?哪些量是不會變的? 歸納總結(jié):
在一個(gè)變化過程中,數(shù)值變化的量叫_______,數(shù)值始終不變的量叫________。
例:圓的周長公式 C?2?r ,在這個(gè)關(guān)系式中,_______是會變化的,叫_______,_______是不變的,叫________。知識探究二:自變量與函數(shù) 請同學(xué)們獨(dú)立完成以下內(nèi)容:
1、小明到商店買練習(xí)簿,每本單價(jià)2.5元,購買的總數(shù)x(本)與總金額y(元)的關(guān)系式,可以表示為y=__________;
2、圓的面積S與半徑r的關(guān)系式S=___________;
3、n邊形的內(nèi)角和S與邊數(shù)n的關(guān)系式S=___________ ;
4、等腰三角形的底角為x度,那么頂角y的度數(shù)用含x的式子表示為y=___________.思考:
1、以上四個(gè)關(guān)系式中,哪些是變量、哪些是常量?每個(gè)問題中都有幾個(gè)變量?
2、同一個(gè)問題中的兩個(gè)變量之間有什么聯(lián)系?_______ 隨著______ 的變化而變化?
自學(xué)課本73頁思考下面的第一段話,總結(jié)歸納函數(shù)的概念:
一般的,在一個(gè)變化過程中,如果有兩個(gè)變量x與y,并且對于x的每一個(gè)______的值,y都有__________的值與其對應(yīng),那么就稱y是x 的函數(shù),其中x 是_________,如果當(dāng)x=a時(shí)y=b,那么b叫做當(dāng)自變量的值為a時(shí)的___________。
分組練習(xí):關(guān)于變量x、y有如下關(guān)系:
?1?y?2x?4(2)y=x2?3?y??x
?4?y?3x(5)y2=2x?6?y?x
其中y是x的函數(shù)的有哪些?不是的請說明理由。知識探究三:確定函數(shù)解析式和自變量的取值范圍 自學(xué)指導(dǎo):自學(xué)完成課本73-74頁例1
例1:汽車油箱中有汽油50L,如果不再加油,那么油箱中的油量y(單位:L)隨行駛路程x(單位:km)的增加而減少,耗油量為0.1L/km。(1)寫出表示y與x的函數(shù)關(guān)系的式子;(2)找出自變量x的取值范圍;
(3)汽車行駛200km時(shí),油箱中還有多少汽油? 思考:確定函數(shù)自變量的取值范圍時(shí)要考慮哪些因素? 課堂小結(jié)
本節(jié)課你學(xué)會了什么? 當(dāng)堂檢測
已知水池中有800立方米的水,每小時(shí)從水池中抽出50立方米的水,(1)寫出剩余水的體積Q(立方米)與時(shí)間t(小時(shí))之間的函數(shù)解析式;(2)寫出自變量t的取值范圍;(3)10小時(shí)后,水池中還有多少水?