Tải bản đầy đủ (.pdf) (19 trang)

Nhận biết về truyền tham biến và tham trị trong chương trình con bằng mô tả lệnh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (502.77 KB, 19 trang )

Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
PHN M U
I. L DO CHN TI

Theo nhng nguyờn tc biờn son SGK, im ni bt nht trong SGK Tin
hc lp 11 l tinh thn tớch hp kin thc, k nng trong tng bi hc, chỳ trng
ti vic thc hnh. iu ny to iu kin cho hc sinh phỏt trin ng thi c
v kin thc v k nng lm vic. im ni bt th hai l tinh thn i mi
phng phỏp dy hc theo hng tớch cc hoỏ hot ng hc tp ca hc sinh.
in nay trong lớ lun dy hc n i chung v lớ lun dy hc m n Tin hc
n i riờng yờu cu s d ng khỏ nhiu phng phỏp: phng phỏp tho lun,
phng phỏp t cõu hi, phng phỏp chia nh m
Tuy nhiờn vi bt k mt phng phỏp no thỡ giỏo viờn vn phi c mt
yờu cu chung l phi hiu rừ v bn cht ca vn thỡ t mi c kh nng
s d ng mt hoc nhiu phng phỏp thớch hp truyn t hay gi m vn
cho hc sinh.
L mt giỏo viờn gii, trc ht phi l mt ngi hc gii, ngi ta n i:
Nu anh nghe
->
thỡ anh s quờn
Nu anh thy
->
thỡ anh s nh
Nu anh lm
->
thỡ anh s hiu
Nu anh ging
->
thỡ anh s tinh th ng
Trong chng trỡnh Tin hc ph th ng thỡ chng trỡnh Tin hc lp 11 tỡm


hiu v ng n ng lp trỡnh m c th l ng n ng lp trỡnh Pascal. õy l mt
ng n ng kh ng ch cht ch v mt cỳ phỏp m cũn cht ch v mt d liu.
Chớnh vỡ th, tho chng bng ng n ng Pascal l mt c hi tt kh ng ch rốn
luyn t duy m cũn rốn luyn tớnh cn thn v chớnh xỏc.
Ng n ng Pascal c dựng vit cỏc chng trỡnh ng d ng trong nhiu
lnh vc. Vi vn phm sỏng sa, d hiu, vi kh nng mnh, Pascal c
xem l ng n ng thớch hp nht ging dy cỏc trng ph th ng v i hc.
Trong sut quỏ trỡnh ging dy t khi m n Tin hc c a vo trng PT
n nay, t i nhn thy rng khi ging dy v ni dung ca Chng 6 "Chng
trỡnh con v lp trỡnh c cu trỳc" phn ln hc sinh u kh ng hiu c cỏch
truyn tham tr v tham bin nh th no m lý do chớnh l c mt s giỏo viờn
cng ch dy nhng gỡ mỡnh bit ch cng cha hiu rừ bn cht ca vn .
T nhng lý do trờn, qua quỏ trỡnh ging dy trờn lp ca bn thõn t i ó
chn ti "Mt cỏch nhn bit v truyn tham bin v tham tr trong Chng
trỡnh con" l ti Sỏng kin kinh nghim ca mỡnh c th giỳp cho giỏo
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

1


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
viờn, hc sinh hiu rừ c vn tng i phc tp ny.
II. MC CH CA SNG KIN KINH NGHIM

- G p phn thỳc y quỏ trỡnh i mi phng phỏp dy hc theo hng
phỏt huy tớnh tớch cc ca hc sinh.
- G p phn nõng cao kin thc v kh nng thc hnh cho giỏo viờn.
- Giỳp hc sinh c kh nng nhn thc kin thc v t hon thin kin
thc.

III. KHCH TH V I TNG NGHIấN CU

Khỏch th: c sinh lp 11 trng T PT Lờ Vn u.
i tng: Truyn tham bin v tham tr trong chng trỡnh con, ng n ng
lp trỡnh Pascal.
IV. NHIM V NGHIấN CU

Trờn c s nhn thc, tỡm hiu v phõn tớch, ti a ra cỏc bi thc hnh
c th v truyn tham tr v tham bin trong chng trỡnh con, trong ng n ng
lp trỡnh Pascal.
V. PHNG PHP NGHIấN CU

ti s d ng cỏc phng phỏp:
- c ti liu.
- Thc nghim.
- Phõn tớch ỏnh giỏ
VI. NHNG ểNG GểP MI

iu qu v cht lng trong dy hc ph thuc vo nhiu yu t. Tuy
nhiờn vic giỏo viờn nhn thc vn c sõu sc, chớnh xỏc hay kh ng, chun b
thit k c chu ỏo hay kh ng cng nh trong phng phỏp ging dy vic nờu
vn v gii quyt vn i vi mt bi hc ng mt vai trũ quan trng.
Mt cỏch nhn thc, cỏch hiu, phõn tớch v a ra cỏc chng trỡnh c th m
t i a ra sau õy, hy vng s g p mt phn nh nh hng ng nghip rỳt
kinh nghim trong nhim v ging dy tt m n Tin hc.

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

2



Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
PHN NI DUNG
I. C S L LUN

Ng n ng lp trỡnh (programming language) l mt tp con ca ng n ng
mỏy tớnh. õy l mt dng ng n ng c chun h a (i lp vi ng n ng t
nhiờn). N c dựng miờu t nhng quỏ trỡnh, nhng ng cnh mt cỏch rt
chi tit.
Ng n ng lp trỡnh l mt h thng c ký hiu h a miờu t nhng tớnh
toỏn (qua mỏy tớnh) trong mt dng m c con ngi v mỏy u c th c v
hiu c.
Theo nh ngha trờn thỡ mt ng n ng lp trỡnh phi tha món c hai
iu kin c bn l:
1. N phi d hiu v d s d ng i vi ngi lp trỡnh, con ngi c
th dựng n gii quyt cỏc bi toỏn khỏc.
2. N phi miờu t mt cỏch y v rừ rng cỏc tin trỡnh (process),
c th chy c trờn cỏc mỏy tớnh khỏc
Chng trỡnh con (subprograms) l mt phộp toỏn tru tng c nh
ngha bi ngi lp trỡnh. Chng trỡnh con c cỏc c tớnh nh sau:
Mi chng trỡnh con c mt im vo duy nht.
Chng trỡnh gi tm ngng vic thc hin trong quỏ trỡnh thc hin
chng trỡnh con.
éiu khin lu n c tr v chng trỡnh gi khi s thc hin chng trỡnh
con kt thỳc.
Khi n i n chng trỡnh con, chỳng ta quan tõm n hai khớa cnh: s
nh ngha chng trỡnh con v li gi thc hin chng trỡnh con.
S c t chng trỡnh con bao gm:
* Tờn ca chng trỡnh con

* S lng cỏc tham s, th t ca chỳng v kiu d liu ca mi mt tham
s .
* S lng cỏc kt qu, th t ca chỳng v kiu d liu ca mi mt kt
qu.
* ot ng c thc hin bi chng trỡnh con.
Chng trỡnh con biu din mt hm toỏn hc, l mt ỏnh x t tp hp cỏc
tham s n tp hp cỏc kt qu.

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

3


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
- Chng trỡnh con tr v mt kt qu duy nht trong tờn chng trỡnh con
thng c gi l mt hm. Cỳ phỏp in hỡnh c t hm c quy nh trong
ng n ng lp trỡnh Pascal:
Function Ten_ham(Danh sỏch cỏc tham s cựng vi kiu d liu tng
ng): Kiu kt qu tr v
Vớ d :
Function FN(x:real; y:integer) : real
éc t ny xỏc nh hm FN : REAL x INTEGER -> REAL
- Chng trỡnh con tr v nhiu hn mt kt qu hoc kh ng c kt qu tr
v trong tờn chng trỡnh con thng c gi l th t c (procedure hoc
subroutine). Cỳ phỏp in hỡnh c t th t c c quy nh trong ng n ng lp
trỡnh Pascal:
Procedure Ten_thu_tuc(Danh sỏch cỏc tham s cựng vi kiu d liu tng
ng)
Vớ d :

Procedure SUB(X:real; Y:Integer; Var Z:Real; Var U:boolean);
Trong s c t ny, tham s c tờn ng sau VAR biu th mt kt qu
hoc mt tham s c th b thay i. Cỳ phỏp ca s c t ny l:
Procedure SUB(X: IN Real; Y: IN Integer; Z: IN OUT Real; U: OUT
Boolean)
Th t c ny khai bỏo mt chng trỡnh con vi s xỏc nh:
SUB : Real x Integer x Real -> Real x Boolean
Cỏc t IN, OUT v IN OUT phõn bit ba trng hp sau õy: IN ch nh
mt tham s kh ng th b thay i bi cng trỡnh con, IN OUT ch nh mt
tham s c th b thay i v OUT ch nh mt kt qu.
Nh vy, vic a ra cỏch nhn bit v truyn tham s s lm cho hc sinh
hiu rừ hn tm quan trng ca chng trỡnh con ng thi cng nh cng lm
tng kh nng t duy ca hc sinh i vi cỏc bi toỏn khỏc.
II. C S THC TIN

* iu kin ca Nh trng: Cng nh tỡnh trng chung ca cỏc trng
T PT trong tnh n i riờng v c nc n i chung trang thit b ca Nh trng
cũn nhiu thiu thn i vi tt c cỏc m n hc chc kh ng riờng gỡ b m n Tin
hc. Mt khỏc, trang thit b i vi b m n li c khi lng kinh phớ ln. Vỡ
vy, trang thit b tin hc cũn khỏ khiờm tn, thiu thn c v lng v cht. s
lng mỏy tớnh ớt (cũn cha 2 hc sinh/01 mỏy tớnh trong gi thc hnh),
trang thit b h tr cho phũng mỏy hu nh kh ng c gỡ.
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

4


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
* iu kin ca giỏo viờn: Nh trng c 03 giỏo viờn tin hc u t

chun, tui i tr, c nng lc, c ý thc hc hi nõng cao trỡnh chuyờn
m n ca bn thõn, lu n c gng khc ph c mi kh khn tn d ng mi trang
thit b hin c c nhng bi ging hay v sinh ng nhm truyn ti mt
cỏch tt nht kin thc ti hc sinh.
* iu kin hc sinh: u ht hc sinh u l con em n ng th n. Nhng
do kinh t a phng nhng nm gn õy phỏt trin mnh, cỏc dch v Internet
v kinh doanh mỏy tớnh trờn a bn cng phỏt trin vỡ vy hc sinh ớt nhiu ó
c tip cn mỏy tớnh v Internet. Mt khỏc, õy l m n hc mi li c ng
d ng nhiu trờn thc t i sng. Vỡ vy, hc sinh cng khỏ hng thỳ v c ý
thc vi m n hc nờn trong cỏc tit hc hu ht cỏc em u hng say xõy dng
bi v tỡm hiu thc t i vi m n hc. Tuy nhiờn, õy l m n hc kh ng
thi li liờn quan n rt nhiu lnh vc khoa hc t nhiờn, xó hi nờn vic tip
cn ca hc sinh cng tng i kh .
III. T VN

Khi ging dy v phn chng trỡnh con (CTC) Tin hc 11 tụi nhn thy
hu ht hc sinh rt b ng vi cỏc khỏi nim hon ton mi m mang tớnh tru
tng nh: Danh sỏch tham s, tham s giỏ tr (tham tr), tham s bin (tham
bin), tham s hỡnh thc, tham s thc s
iu lm tụi khụng khi bn khon l lm th no hc sinh hiu v
nm bt c cỏc khỏi nim ny mt cỏch hiu qu nht, nhm trỏnh nhng s
hiu lm gia cỏc khỏi nim tham bin v tham tr .
in nay hu ht cỏc ngụn ng bc cao u t chc hai cỏch truyn tham s
khi gi mt CTC, l truyn theo tr v truyn theo bin. Vic truyn tham
chiu theo hai cỏch khỏc nhau nhiu khi gõy ra nhng kt qu khỏc nhau khụng
mong mun, iu ny dn n nhng li logic rt khú phỏt hin.
Bi vit ny khụng ngiờng v thut toỏn ca cỏc bi toỏn khú m ch a ra
cỏc bi toỏn cú thut toỏn n gin nht giỏo viờn v hc sinh khụng ri vo
vic gii quyt thut toỏn m chỳ trng n vn ca bi vit.
IV. GII QUYT VN


1. Khỏi nim v tham bin v tham tr
Theo SGK Tin hc 11, tham bin v tham tr c nh ngha nh sau:
* Tham tr: Trong lnh gi CTC, cỏc tham s hỡnh thc c thay bng cỏc
tham s th s tng ng l cỏc giỏ tr c th c gi l cỏc tham s giỏ tr
(tham tr).

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

5


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
* Tham bin: Trong lnh gi CTC, cỏc tham s hỡnh thc c thay bng
cỏc tham s th s tng ng l tờn cỏc bin c gi l cỏc tham s bin (tham
bin)
2. Truyn tham s khi dựng tham bin v tham tr
Nu mt CTC cú danh sỏch tham s thỡ cỏc tham s phi c khai bỏo
phn u sau tờn CTC, trong cp du ngoc trũn. Khai bỏo mt tham s cú ngha
l ch ra nú thuc loi tham s no (tham s bin hay tham s tr) v nú cú kiu
d liu l gỡ?
Vớ d :
Procedure Test(x, y: integer ; var z: boolean);
Function Delta( a, b, c: real): real;
- Danh sỏch tham s l x, y, z, a, b.
- x, y cú kiu d liu Integer (s nguyờn);
- a, b, c cú kiu d liu real (s thc);
- z c kiu d liu boolean (logic).
Vy trong cỏc tham s x, y, z, a, b õu l tham bin, õu l tham tr?

Bng trc quan ta d dng nhn thy:
- z l tham bin vỡ z cú t khoỏ Var ng trc;
- x, y, a, b, c l tham tr vỡ khụng cú t khoỏ Var ng trc.
thy rừ hn v bn cht s khỏc nhau gia tham bin v tham tr ta xột
vớ d sau:
Vớ d 1:
Progam Vidu1;
var a, b, c: Integer;
Procedure Exp(x, y: Integer; Var z: Integer );
Begin
z:= x + y ;
(4.1)
x:= x*y ;
(4.2)
End;
Begin
a:= 5;
(1)
b:= 10;
(2)
c:= 7;
(3)
Exp(a,b,c);
(4)
Write(a:5,b:5,c:5);
(5)
End.
Nhỡn vo chng trỡnh, ch quan ngi c c th a ra kt qu
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u


6


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
50 10 15
(*)
Nhng kt qu nhn c sau khi chy chng trỡnh l:
5 10 15
(**)
Vy ti sao li cú kt qu ny?
Tht vy, do x v y l tham tr nờn khi cú li gi Exp(a,b,c) thỡ x nhn c
giỏ tr ca a, y nhn c giỏ tr ca b (c ngha a, b vn c giỏ tr nh ban u a
= 10, b = 3). Nhng cũn z l tham bin nờn khi cú li gi Exp(a,b,c) thỡ z nhn
c bin c.
M t thc hin chng trỡnh c th theo th t lnh:
Lnh

Kt qu CT chớnh

Kt qu CT con

Din gii

(1)
a=5
(2)
a = 5, b = 10
(3)
a = 5, b = 10 v c = 7

(4)
x = 5, y = 10, z = c(7) Truyn tham s
(4.1)
z (c) = 15
(4.2)
x = 15
(5)
a = 5, b = 10 v c = 15
In kt qu (**)
Nhn xột: khi chy chng trỡnh thỡ tham s thc s truyn cho tham bin
cú kt qu thay i (theo CTC) cũn tham s thc s truyn cho tham tr cú kt
qu khụng thay i, chớnh l s khỏc nhau c bn gia tham bin v tham tr,
ta xột vớ d sau.
Vớ d 2:
Program Vidu2 ;
Var a, b: Integer ;
Procedure Hoan_doi(x, y: Integer);
var tg:Integer;
Begin
tg:=x;
(4.1)
x:=y;
(4.2)
y:=tg;
(4.3)
End;
Begin
a:= 5;
(1)
y:= 10;

(2)
Writeln(a:5, b:5);
(3)
Hoan_doi(a,b);
(4)
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

7


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
Writeln(a:5, b:5);
(5)
Readln;
End.
Kt qu xut hin trờn mn hỡnh khi chng trỡnh c thc hin:
5 10
(*)
5 10
(*)
Th t c oandoi(a,b) trong vớ d ny dựng i giỏ tr gia 2 bin
nguyờn a v b. Tuy nhiờn khi chy chng trỡnh, iu ny kh ng xy ra. Giỏ tr
ca 2 bin nguyờn a v b trc v sau khi gi th t c oan_doi(a,b) vn kh ng
i: a = 5 v b = 10.
Ti sao li nh vy?
Lý do: trong m t th t c oan_doi thỡ x v y l tham tr nờn khi c li gi
oan_doi(a,b) thỡ x nhn c giỏ tr cha trong a cũn y nhn c giỏ tr cha
trong b.
M t thc hin chng trỡnh c th theo th t lnh:

Lnh

(1)
(2)
(3)
(4)
(4.1)
(4.2)
(4.3)
(5)

Kt qu CT chớnh

Kt qu CT con

a=5
a = 5 v b = 10
a = 5 v b = 10
x = 5 v y = 10
tg = 5
x = 10
y=5
a = 5 v b = 10

Din gii

In kt qu (*)
Truyn tham s

In kt qu (**)


Vớ d 3:
Program Vidu3;
Var a, b: Integer ;
Procedure Hoan_doi(x: Integer; var y: Integer);
var tg:Integer;
Begin
tg:=x;
(4.1)
x:=y;
(4.2)
y:=tg;
(4.3)
End;
Begin
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

8


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
a:= 5;
(1)
y:= 10;
(2)
Writeln(a:5,b:5); (3)
Hoan_doi(a,b);
(4)
Writeln(a:5,b:5); (5)

Readln;
End.
Kt qu xut hin trờn mn hỡnh khi chng trỡnh c thc hin:
5 10 (*)
5 5 (**)
Trong vớ d ny khi chy chng trỡnh ta li thy ch c bin b thay i cũn
bin a li c gi nguyờn.
Lý do trong m t th t c oan_doi thỡ x l tham tr v y l tham bin nờn
khi c li gi oan_doi(a,b) thỡ x nhn c giỏ tr cha trong a cũn y nhn
c bin b.
M t thc hin chng trỡnh c th theo th t lnh:
Lnh

Kt qu CT chớnh

Kt qu CT con

Din gii

(1)
a=5
(2)
a = 5 v b = 10
(3)
a = 5 v b = 10
In kt qu (*)
(4)
Gi CT con
x = 5 v y = b(10)
Truyn tham s

(4.1)
tg = 5
(4.2)
x = 10
(4.3)
y(b) = 5
y l b
(5)
a = 5 v b = 5
In kt qu (**)
Vy, nu s a li vic khai bỏo cỏc tham s trong th t c Hoan_doi l truyn
theo bin bng cỏch thay phn khai bỏo tờn th t c li nh sau:
Procedure Hoan_doi(var x, y: Integer);
thỡ chng trỡnh s cho kt qu nh mong mun l:
5 10
10 5
Nhn xột: Khi ó nhn bit c s khỏc nhau gia tham bin v tham tr
thỡ mt CTC cú tham s lỳc no cn n tham bin, lỳc no cn n tham tr l
mt vn ta cn phi quan tõm khi s a d ng trong nhng chng trỡnh c th.
Vỡ vy, ta xột tip mt vớ d sau õy:
Vớ d 4:
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

9


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
Program Vidu4;
Var tu,mau,d:word;

Function UCLN(Var a,b:Word):Word;
Begin
While a<>b Do
If a>b Then a:= a-b
Else b:= b-a;
UCLN:= a;
End;
Begin
Write('nhap tu so:'); Readln(tu);
Write('nhap mau so:'); Readln(Mau);
d:= UCLN(tu,mau);
If d>1 Then
Begin
Tu:= tu Div d;
mau:= mau Div d;
End;
Writeln(tu,'/',mau);
End.
Chng trỡnh trờn s d ng hm UCLN(a, b) ti gin mt phõn s khi
nhp t bn phớm cỏc giỏ tr t s v mu s ca nú.
Khi chy chng trỡnh, ta luụn nhn c kt qu khụng mong mun l 1/1
cho mi phõn s. Vy li do õu?
Li ny xy ra do hai tham s hỡnh thc ca hm UCLN: a, b l tham bin,
nờn sau li gi d:= UCLN(tu,mau), thỡ a nhn c l tu; b nhn c l mau v
khi trong quỏ trỡnh thc hin hm
d = tu = mau d n kt qu luụn l 1/1.
chng trỡnh cho kt qu ỳng ta phi s a li vic khai bỏo cỏc tham s
trong phn mụ t hm nh sau:
Function UCLN(a,b:Word):Word;
Nhn xột: Vic xỏc nh truyn theo tham tr hay truyn theo tham bin cho

mt tham s l khụng th tu ý vỡ nú cú th dn n nhng kt qu sai vi yờu
cu ca bi toỏn.
Tuy nhiờn i vi mt chng trỡnh khi x d ng CTC, vic xỏc nh c
mt tham s hỡnh thc l tham bin hoc tham tr cũn cha , ta nờn nh mt
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

10


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
CTC c thc hin l da vo li gi nú t Chng trỡnh chớnh. Vỡ vy, CTC
cú th c thc hin nhiu ln v mi ln gi giỏ tr cỏc tham s cú th thay
i:
Vớ d 5:
Program VD5;
Var a, b, c: Byte;
Function F(Var x: Byte; y: Byte): Byte;
Begin
x:=x+y;
(3.1)
F:=x + y;
(3.2)
End;
Begin
a:=5;
(1)
b:= 10;
(2)
c := F(a,b)+F(a,b);

(3)
Writeln(c);
(4)
End.
Quan sỏt chng trỡnh chng trỡnh trờn ta nhn thy:
Chng trỡnh ra mn hỡnh giỏ tr c = F(a,b)+F(a,b) vi a, b ban u tng
ng l 5 v 10.
Bng suy lun ta thy:
Vi a = 5; b = 10 -> F(a,b) = 25
Suy ra: c = 25 +25 = 50.
Kim tra bng test lnh c th, ta s d ng:
M t thc hin chng trỡnh c th theo th t lnh:
Tuy nhiờn: i vi lnh c := F(a,b)+F(a,b); (3) c 4 bc c thc hin
trỡnh t nh sau:
Bc (3.a) - Tớnh toỏn hng F(a,b) u.
Bc (3.b) - Tớnh toỏn hng F(a,b) sau.
Bc (3.c) - Thc hin phộp toỏn + v gỏn giỏ tr biu thc cho c.
Lnh

(1)
(2)
(3.a)
(3.1)
(3.2)

Kt qu CT chớnh

a=5
a = 5 v b = 10
Gi hm F


Kt qu CT con

x = a(5) v y = 10
x(a) = 15
F = 25

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

Din gii

Truyn tham s

11


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
F (u) = 25; a = 15
(3.b)
Gi hm F
x = a(15) v y = 10
Truyn tham s
(3.1)
x(a) = 25
(3.2)
F = 35
F (sau) = 35; a = 25
(3.c)
c = 60

(4)
In kt qu
Vy kt qu khi chy chng trỡnh s l 60 ch khụng phi l giỏ tr 50 nh
ban u ta ó xỏc nhn:
Lý do: x l tham bin nờn sau li gi hm F u thỡ giỏ tr ca a ó thay i
lm nh hng n li gi hm F sau.
Nhn xột: Nh vy, khi truyn mt tham s cho CTC, nu ta mun bo v
giỏ tr ca tham s khi b CTC vụ tỡnh phỏ thỡ tham s phi c dựng
nh l tham tr. Khi cho phộp giỏ tr u vo tng ng cú th l hng, biu
thc hoc bin nguyờn. Cũn mt tham s nu mun dựng ly kt qu (nhng
bin i) do chng trỡnh con em li thỡ tham s phi l tham bin v giỏ tr
u vo tng ng ch cú th l bin.
3. Mt s bi tp kim tra.
Cõu 1: Vi a l tham bin, b l tham tr thỡ khai bỏo no trong cỏc khai bỏo
sau õy l ỳng?
A. Procedure M(Var a:Integer ; b: Integer );
B. Procedure M(a,b: Integer );
C. Procedure M(Var a,b: Integer );
D. Procedure M(a: Integer ; Var b: Integer ) ;
ỏp ỏn: A
Cõu2: Giỏ tr tng ng ca cỏc bin a, b, c, d sau khi chy chng trỡnh:
Progam Cau2;
Procedure Tong_hieu(Var a, b: Integer; c: Integer );
Begin
a:= c b ;
b:= a + c ;
c:= a*b ;
End;
Begin
clrscr;

a:= 3; b:= 5; c:= 10;
Tong_hieu(a,b,c);
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

12


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
Write(a,b,c);
Readln;
End.
A. 3 5 10
B. 5 5 10
C. 5 -5 10
D. 5 -5 -25
ỏp ỏn: C
Cõu 3: Kt qu sau khi thc hin chng trỡnh sau?
program Cau3;
Var x:integer;
Procedure Thaydoi( x:integer);
Begin
x:=1;
end;
Begin
x:=0; Thaydoi(x); Writeln(x:3);
readln
End.
A. 1
B. 0

C. 1 0
D. 0 1
ỏp ỏn: B
Cõu 4: Kt qu sau khi thc hin chng trỡnh sau?
program Cau4;
Var x:integer;
Procedure Thaydoi( x:integer);
Begin
Write(x:3)
x:=1;
end;
Begin
x:=0; Thaydoi(x); Writeln(x:3);
readln
End.
A. 1
B. 0
C. 1 0
D. 0 1
ỏp ỏn: D
Cõu 5: Kt qu sau khi thc hin chng trỡnh sau?
Program Cau5;
Var a: Byte;
Function F(Var x:Byte):Byte;
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

13


Nhận biết về truyền tham biến và tham trị trong

Ch-ơng trình con bằng mô tả lệnh
Begin
x:=x+1; F:=x;
End;
Begin
a:=5; Writeln(F(a));
Readln;
End.
A. 5
B. 11
C. 6
D. 13
ỏp ỏn: C
Cõu 6: Kt qu sau khi thc hin chng trỡnh sau?
Program Cau6;
Var a, b, c: Byte;
Function F(Var x: Byte; y: Byte): Byte;
Begin
x:=x+y;
F:=x + y;
End;
Begin
a:=5;
b:= 10;
c := 2* F(a,b);
Writeln(c);
End.
A.
15
B.

25
C.
30
D.
50
ỏp ỏn: D
Cõu 7: Kt qu sau khi thc hin chng trỡnh sau?
Program Cau6;
Var a, b, c: Byte;
Function F(Var x: Byte; y: Byte): Byte;
Begin
x:=x+y;
F:=x + y;
End;
Begin
a:=5;
b:= 10;
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

14


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
c := F(a,b) + F(a,b);
Writeln(c);
End.
A.
60
B.

50
C.
30
D.
20
ỏp ỏn: A
Cõu 8: Vi phn khai bỏo tờn th t c:
Procedure N( x:Integer ; Var y:Integer );
m l bin nguyờn, cỏc li gi sau õy li gi no l hp l?
A.
N(m,m+3);
B.
N(2,m);
C.
N(m+1,4);
D.
N(2,3*m+5);
ỏp ỏn: B
Cõu 9: Cho bit chng trỡnh sau lm vic gỡ?
Program
Cau9;
Var n:longint;
Begin
Function gt(n: longint):longint;
Begin
If n = 1 then gt:= 1
Else gt := gt * gt;
End;
Begin
Write(nhap n > 0:); Readln;

Writeln(gt(n));
Readln;
End.
Write(nhap n:); Readln(n);
Writeln(gt(n));
Readln;
End.
Chng trỡnh dựng hm tớnh n! vi n c nhp t bn phớm.
V. KT QU THC NGHIM

Sau mt thi gian ỏp d ng phng phỏp trờn c 2 nh m hc sinh c hc
lc m n tng ng nhau, gm:
- Nhúm A: c sinh cỏc lp 11B3, 11B4
Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

15


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
- Nhúm B: c sinh cỏc lp 11B1, 11B2
Kt qu thu c c th nh sau:
Th ng qua vic kim tra bi c, kim tra 15 kt qu thu c l
+ Nhúm A: (s s d ng phng phỏp mi) c trờn 80% hon thnh c
nhng yờu cu giỏo viờn a ra.
+ Nhúm B: (kh ng s d ng nh m i chng), ch c gn 60% hc sinh
hon thnh c yờu cu kim tra kin thc ca giỏo viờn.
T kt qu thu c rừ rng nh vy, nờn vic ỏp d ng s d ng phng
phỏp nhng kt qu rừ rt. Th hin bng kt qu hc tp ca hc sinh nh
sau:

Bng kt qu hc lc mụn Tin hc k I. nm hc 2012 2013

43
41
43

Hs cú hc
lc gii
04
05
05

Hs cú hc lc
khỏ
29
27
29

Hs cú hc
lc TB
10
09
09

T l hs cú hc lc Khỏ
tr lờn (%)
76.0
78.1
79.1


44

06

28

10

77.2

Lp

S s

11B1
11B2
11B3
11B4

Bng kt qu kim tra ti cỏc lp sau khi thc nghim
Lp

S s

Hs cú hc
lc gii

Hs cú hc
lc khỏ


Hs cú hc
lc Tb

T l hs cú hc lc Tb tr
lờn (%)

11B1
11B2
11B3
11B4

43
41
43
44

05
05
07
09

29
29
34
37

09
07
02
0


79.1
82.9
95.3
100.0

T kt qu trờn, t i nhn thy:
i vi giỏo viờn: C ng vic ging dy tr nờn nh nhng, thoi mỏi hn,
vic x lý cỏc tỡnh hung trong dy hc tr nờn linh hot giao tip trong tit hc
gia thy v trũ cng tr kh ng cng thng.
i vi hc sinh: cỏc em cng thy gi hc nh nhng hn c hng thỳ i
vi tit hc do vy m vic tip thu kin thc c hiu qu hn v c bit gi
thc hnh sau c hiu qu rừ rt.

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

16


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
PHN KT LUN V KIN NGH
Kt lun
B m n Tin hc l mt b m n mi v kh i vi hc sinh bi tớnh phc
tp v kh nng ng d ng ca n i vi i sng thc t.
Dy Tin hc ó kh - Dy th no hc sinh c th mau ch ng nm bt
kin thc v vn d ng hnh tho kin thc vo cỏc bi tp thc hnh li cng ũi
hi ngi giỏo viờn phi c nhiu c gng, c phng phỏp dy hc sỏng to c
th ỏp ng ngy cng cao yờu cu ca m n hc.
Trờn õy l nhng kinh nghim nh ca bn thõn trong vic ging dy hc

sinh nhn bit v tham bin v tham tr trong chng trỡnh c s d ng chng
trỡnh con ca ng n ng lp trỡnh PASCAL m t i a ra ng nghip tham
kho g p ý kin.
Rt mong nhn c nhng ng g p ca ng nghip bn thõn t i núi
riờng v giỏo viờn tin hc n i chung c th c nhng cỏch dy hay v phự hp
vi c trng b m n, vi mi bi hc v i tng hc sinh.
Kin ngh
Trờn c s vt cht hin c ca Nh trng i vi b m n tin hc, vic
vic dy v hc ca thy v trũ cũn gp rt nhiu kh khn, nh: thit b kh ng
ng b, mỏy ang cũn l dng phũng hc ci to nờn kh ng m bo c v tiờu
chun v cht lng.
Vỡ vy, c th nõng cao cht lng hn na, rt mong Nh trng cng
nh s, ngnh c kt hoch u t v c s vt cht cng nh, to iu kin
quan tõm i vi i ng giỏo viờn tin hc v c bit xõy dng c mt i
ng qun tr cỏc phũng mỏy ti cỏc Nh trng.
Xin chõn thnh cm n!
XC NHN
CA TH TRNG N V

Thanh Húa, ngy15 thỏng 5 nm 2013
Tụi xin cam oan õy l SKKN ca mỡnh vit,
khụng sao chộp ni dung ca ngi khỏc.

Ngi vit

Lấ ANH DNG

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

17



Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
TI LIU THAM KHO
1.
S m - Cm H - Trn Hựng - Nguyn c Ngha Nguyn Thnh Tựng - Ngụ ỏnh Tuyt . Tin hc 11(SGK), NXB Giỏo D c.
2.
S m - Cm H - Trn Hựng - Nguyn c Ngha Nguyn Thnh Tựng - Ngụ ỏnh Tuyt . Tin hc 11(SGV), NXB Giỏo D c.
3. Lờ Khc Thnh - Cm H - Nguyn V Quc ng. Ti liu bi
dng thng xuyờn cho GV THPT chu k III (2004 - 2007).
4. Quỏch Tun Ngc. Ngụn ng lp trỡnh PASCAL (lý thuyt v bi tp).
5. Xuõn L i. Cu trỳc d liu v gii thut, NXB Quc Gia
Ni

6. Bỏch khoa ton th m

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

18


Nhận biết về truyền tham biến và tham trị trong
Ch-ơng trình con bằng mô tả lệnh
MC LC
Ni dung

Trang

Phn m u


1
1
2
2
2
2
2
3
3
4
5
5
5
6
12
15
17

I. Lý do chn ti
II. M c ớch ca SKKN
III. Khỏch th v i tng nghiờn cu
IV. Nhim v nghiờn cu
V. Phng phỏp nghiờn cu
VI. Nhng ng g p mi
Phn ni dung
I. C s lý lun
II. C s thc tin
III. t vn
IV. Gii quyt vn

1. Khỏi nim v tham bin v tham tr
2. Truyn tham s khi dựng tham bin v tham tr
3. Mt s bi tp kim tra.
V. Kt qu thc nghim
Phn kt lun v kin ngh

Design: Lê Anh Dũng - tr-ờng THPT Lê Văn H-u

19



×