Ch¬ng 4
LËp tr×nh trªn Maple
4.1. C¸c lÖnh lËp tr×nh c¬ b¶n..................................................................127
4.1.1. Vßng lÆp while................................................................................ 129
4.1.2. Vßng lÆp for..................................................................................... 130
4.1.3. LÖnh ®iÒu kiÖn if................................................................................. 132
4.1.4. LÖnh break........................................................................................ 136
4.1.5. LÖnh next........................................................................................... 137
4.2. ThiÕt lËp mét chu tr×nh (Procedure).................................................138
4.2.1. Giíi thiÖu............................................................................................ 138
4.2.2. Khai b¸o chu tr×nh............................................................................. 138
4.2.3. Tham biÕn .......................................................................................... 139
4.2.4. Ph¹m vi c¸c biÕn (biÕn toµn côc, biÕn côc tham biÕn).... 140
BiÕn toµn côc.............................................................................................................140
BiÕn côc bé................................................................................................................140
Tham biÕn .................................................................................................................141
4.2.5. §Þnh gi¸ trªn c¸c biÕn...................................................................... 141
§Þnh gi¸ tªn hµm vµ tham biÕn.................................................................................141
§Þnh gi¸ biÕn côc bé vµ biÕn toµn côc......................................................................142
Minh ho¹...................................................................................................................142
4.2.6. c¸c chu tr×nh ®Ö qui (tuú chän remember)............................ 143
Ch¹y tõng bíc chu tr×nh..........................................................................................144
VÝ dô..........................................................................................................................146
4.2.7. dông c¸c hµm RETURN, ERROR ................................................... 148
127
4.2.8. Mét chu tr×nh................................................................... 149
1. Chu tr×nh t×m c¸c thµnh phÇn tèi ®¹i trong mét m¶ng .........................................149
2. Chu tr×nh tÝnh khai triÓn Fourier cña hµm sè.......................................................151
4.3. T×m lçi trong chu tr×nh.....................................................................154
4.3.1. Printlevel (LÇn theo c¸c bíc cña chu tr×nh)................................ 154
4.3.2. Trace (dß tõng lÖnh trong chu tr×nh).......................................... 157
4.3.3. Xem nguån mét chu tr×nh.......................................................... 158
4.3.4. Xem mét chu tr×nh b»ng lÖnh print.................................................. 161
4.3.5. ChÆn b¾t lçi....................................................................................... 161
4.4. Lµm viÖc trªn c¸c tÖp trong Maple ...................................................164
4.4.1. C¸c thao t¸c b¶n........................................................................ 164
Më mét tÖp................................................................................................................164
§ãng mét tÖp ®· ®îc më.........................................................................................166
X¸c ®Þnh vÞ trÝ cuèi tÖp..............................................................................................166
LÊy vµ ®Æt l¹i vÞ trÝ hiÖn thêi trong tÖp.....................................................................168
Xo¸ mét tÖp...............................................................................................................169
§Èy d÷ liÖu tõ vïng ®Öm vµo ®Üa..............................................................................170
Më mét tÖp ®Ó ®äc/ghi mµ kh«ng dïng vïng ®Öm...................................................171
§ãng tÖp ®îc më kh«ng dïng vïng nhí ®Öm........................................................173
LÖnh ghi d÷ liÖu........................................................................................................174
LÖnh ®äc d÷ liÖu read.............................................................................................175
4.4.2. §äc liÖu tÖp vµo...................................................................... 176
§äc mét dßng tõ tÖp..................................................................................................176
§äc mét sè bytes tõ tÖp............................................................................................177
§äc lÖnh tõ bµn phÝm................................................................................................178
§äc d÷ liÖu cã sè cét vµ kiÓu cè ®Þnh.......................................................................179
§äc d÷ liÖu ®Þnh râ kiÓu...........................................................................................180
4.4.3. Ghi liÖu vµo tÖp............................................................................ 181
Giao diÖn cña c«ng viÖc ghi......................................................................................181
Ghi b»ng lÖnh in (print)............................................................................................182
LÖnh lprint().............................................................................................................183
4.4.4. thao t¸c trªn tÖp................................................................. 184
128
4.1. C¸c lÖnh lËp tr×nh c¬ b¶n
4.1.1. Vßng lÆp
while
CÊu tróc ph¸p:
while
condition
do
sequence expressions
od;
Chøc n¨ng:
Vßng lÆp while cho phÐp lÆp chuçi c¸c c©u lÖnh n»m gi÷a do od khi mµ
®iÒu kiÖn conditionvÉn cßn ®óng (tøc lµ biÓu thøc ®iÒu kiÖn cho gi¸ trÞ true).
§iÒu kiÖn condition ®îc kiÓm tra ngay t¹i ®Çu mçi vßng lÆp, nÕu nã tháa m·n
(gi¸ trÞ cña nã lµ ®óng) th× c¸c c©u lÖnh bªn trong ®îc thùc hiÖn, sau ®ã l¹i tiÕp tôc
kiÓm tra ®iÒu kiÖn condition cho ®Õn khi ®iÒu kiÖn kh«ng cßn tháa m·n
n÷a.Vßng lÆp while thêng ®îc sö dông khi sè lÇn lÆp mét hay mét chuçi biÓu
thøc lµ kh«ng x¸c ®Þnh râ, ®ång thêi ta muèn c¸c biÓu thøc ®ã cÇn ®îc lÆp trong
khi mét ®iÒu kiÖn nµo ®ã cßn ®îc tháa m·n.
§iÒu kiÖn condition trong vßng lÆp ph¶i lµ mét biÓu thøc boolean, tøc lµ
gi¸ trÞ cña nã chØ cã thÓ lµ ®óng hoÆc sai, nÕu kh«ng th× sÏ sinh ra lçi.
Trong trêng hîp muèn tho¸t ra khái vßng lÆp ngay tõ trong gi÷a vßng lÆp, ta
cã thÓ thùc hiÖn b»ng c¸ch dïng c©u lÖnh RETURN, break hoÆc quit.
Chó ý r»ng vßng lÆp while-do-od; kh«ng b¾t buéc ph¶i n»m trªn nhiÒu dßng
lÖnh nhng ngêi ta thêng viÕt trªn nhiÒu dßng ®Ó c©u lÖnh dÔ ®äc vµ dÔ hiÓu h¬n.
Minh ho¹
T×m íc sè chung lín nhÊt cña 2 sè nguyªn theo thuËt to¸n Eulid
T tëng cña thuËt to¸n:
- Khai b¸o 2 a,b
- T×m phÇn d trong phÐp chia cña a cho b, gäi ®ã d
- Sau ®ã ®Æt a:=b (cho amang gi¸ trÞ cña b), t¬ng b:=d
- Vßng lÆp tiÕp tôc cho ®Õn khi
0)
b=0 (Tøc lóc ®ã phÇn d b»ng
V× kh«ng x¸c ®Þnh tríc sè vßng ph¶i lÆp, ta dïng vßng lÆp kh«ng x¸c ®Þnh
(While)
[>a:=20;b:=15;
129