第八章程式序設(shè)計個性化教案
一、學習目標
1.掌握模塊化程序設(shè)計思想
2.掌握函數(shù)與子程序的定義及使用
3.理解全局變量與局部變量
4.了解參數(shù)的傳送過程
二、教學重點
掌握模塊化程序設(shè)計
三、教學難點
掌握函數(shù)與子程序的定義及使用
四、教學方法
1.演示法。
2.實踐法。
五、教學手段與教學媒體
多媒體網(wǎng)絡(luò)教室。
六、課時安排
1課時。
七、教學過程
“模塊化程序設(shè)計”中的“模塊”是指:完成程序全部或部分任務的獨立源程序文件。
程序的每一個模塊可以是子程序或函數(shù),它是通過執(zhí)行一系列語句來完成一個特定的'操作過程,常稱為“過程”。
“執(zhí)行一個過程”——調(diào)用一個子程序或函數(shù);
一、自定義函數(shù)
QBASIC函數(shù):
、贅藴屎瘮(shù)
、谧远x函數(shù)
、弁獠亢瘮(shù)
1、單行自定義(DEF)函數(shù)
語句函數(shù)——用一個語句定義一個函數(shù)
(1). 一般格式;
DEF fn<名字>(<參數(shù)>)=<表達式>
例1. 已知圓的半徑r,求圓的面積:S=πr2
DEF fns(r)=3.14159*r*r
PRINT fns(3)
END
例2.DEF fns$=”this is a string”
PRINT fns$
例3. 求以下公式:
DEF fnc(a,b)=SQR(a*a+b*b)
Print fnc(3,4)
(2).說明
函數(shù)名由兩部分組成
fn s
自定義函數(shù)標志(fn),用戶定義名(一個字母s);
參數(shù)可有多個,但調(diào)用時的參數(shù)(實參)與定義時的
參數(shù)(形參)要一致。
2、多行自定義(DEF)函數(shù)
用多行語句來定義一個函數(shù)。
(1)、一般格式
DEF fn<名字>(<參數(shù)>)
......
fn<名字>=<表達式>
END DEF
例4、定義函數(shù)f(n)=1+2+...+n
DEF fns(n)
S=0
FOR i=1 t n
S=S+i
Next i
fns=S
END DEF
Fr n=1 t 100
Print fns(n)
NEXT n
END
(2)、說明
。╥)形式參數(shù)——定義函數(shù)的自變量
實際參數(shù)——調(diào)用函數(shù)時的參數(shù)。
。╥i)函數(shù)先定義后使用,即習慣把DEF語句
放在程序的開頭。
二、塊內(nèi)子程序
1、gsub-return 語句
子程序定義:
<標號或行號>:
......
return
子程序調(diào)用:
GOSUB <標號或行號>
例5:求4!+5!+6!
S=0
n=4: gsub f:s=s+p
n=5: gsub f:s=s+p
n=6: gsub f:s=s+p
print “4!+5!+6!=”;s
end
f: p=1
fr i=1 t n
p=p*i
next i
return
2、n gsub-return 語句
(1).一般格式
子程序定義:
<標號>:
......
return
子程序調(diào)用:
ON <表達式> gsub <子程1>,<子程2>,…,<子程n>
例:“小學生算術(shù)練習”——輪流出一個二位數(shù)和一個一位數(shù)的加法、減法和乘法的題目,共出十題,每題 10分。
RANDOMIZE
fr i=1 t 10
a=int(90*RND)+10
b=int(9*RND)+1
p=i d 3 + 1
ON p GOSOB a1,a2,a3
Next i
Print "n=";n*10
END
a1: print a;"+";b;"=";
input c
if c=a+b then n=n+1
return
a2: print a;"-";b;"=";
input c
If c=a-b then n=n+1
Return
a3: print a;"*";b;"="
Input c
If c=a*b then n=n+1
Return.
(2)、說明:
<表達式>的值不是整數(shù)時,按四舍五入處理,值為0或大于n則不起作用,值為負時系統(tǒng)給出錯誤信息——“不正確的函數(shù)調(diào)用”。
3、ON E(n) GOSUB-RETURN 語句
(1)、調(diào)用格式
ON E(n) GOSUB <標號>
其中n是數(shù)值表達式,代表一個“陷阱鍵”。n的值與 設(shè)定鍵的對應關(guān)系如下:
n值鍵名
1~10 功能鍵F1~F10
11方向鍵↑
12方向鍵←
13方向鍵→
14方向鍵↓
例: 求和式:S=12+22+...+n2 n=100000
ON E(2) GOSUB pri
E(2) ON
S=0
Fr i=1 t 100000
S=S+i*i
NEXT i
pring “s=”;s
end
pri:print “n5
【第八章程式序設(shè)計個性化教案】相關(guān)文章:
《荔枝圖序》教案設(shè)計 教案教學設(shè)計12-06
《名人傳》序教案 教案教學設(shè)計12-06
《愚溪詩序》教案 教案教學設(shè)計12-06
《滕王閣序》教案 教案教學設(shè)計12-06
滕王閣序教案 教案教學設(shè)計12-06
有趣的漫畫程式教學設(shè)計07-04