intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Maple - Chương 3: Các khái niệm và các hàm cơ bản trong lập trình trên Maple

Chia sẻ: Phuc Nguyen | Ngày: | Loại File: PDF | Số trang:43

81
lượt xem
16
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng cung cấp cho người học các kiến thức: Các khái niệm và các hàm cơ bản trong lập trình trên Maple, sự định giá, các tính toán số trong Maple, sắp xếp các số hạng,... Hi vọng đây sẽ là một tài liệu hữu ích dành cho các bạn sinh viên đang theo học môn dùng làm tài liệu học tập và nghiên cứu. Mời các bạn cùng tham khảo chi tiết nội dung bài giảng.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Maple - Chương 3: Các khái niệm và các hàm cơ bản trong lập trình trên Maple

Ch−¬ng 3<br /> <br /> C¸c kh¸i niÖm vµ c¸c hµm c¬<br /> b¶n trong lËp tr×nh trªn Maple<br /> <br /> 3.1. C¸c kh¸i niÖm c¬ b¶n ........................................................................... 85<br /> 3.1.1. Tªn (name) vµ x©u kÝ tù...................................................................... 86<br /> 3.1.2. BiÕn trong Maple ................................................................................. 87<br /> 3.1.3. Sù ®Þnh gi¸ ........................................................................................... 87<br /> 3.1.4. Ng¨n c¶n ®Þnh gi¸ .............................................................................. 90<br /> 3.1.5. Sù tù ®éng ®¬n gi¶n biÓu thøc........................................................... 91<br /> 3.1.6. C¸c tÝnh to¸n sè trong Maple ............................................................ 92<br /> 3.2. C¸c hµm th−êng dïng trong Maple ................................................. 92<br /> 3.2.1. ¦íc l−îng gi¸ trÞ .................................................................................. 92<br /> 3.2.2. §¬n gi¶n biÓu thøc: lÖnh simplify .................................................. 94<br /> 3.2.3. T×m gi¸ trÞ lín nhÊt vµ bÐ nhÊt............................................................ 96<br /> 3.2.4. Thay thÕ trong biÓu thøc: lÖnh subs................................................... 97<br /> 3.2.5. Tæ chøc biÓu thøc theo mét sè biÕn chÝnh ....................................... 99<br /> 3.2.6. S¾p xÕp c¸c sè h¹ng........................................................................ 100<br /> 3.2.7. ChuyÓn ®æi d¹ng cÊu tróc d÷ liÖu (lÖnh convert) ......................... 102<br /> 3.2.8. Thùc hiÖn mét phÐp to¸n trªn nhiÒu thµnh phÇn........................... 104<br /> 3.2.9. Xem cÊu tróc vµ thµnh phÇn cña mét biÓu thøc .......................... 105<br /> 3.2.10. KiÓm tra mét phÇn tö cã thuéc mét d÷ liÖu cã cÊu tróc nµo ®ã 108<br /> <br /> 85<br /> <br /> 3.2.11. KiÓm tra mét tªn ®· ®−îc g¸n hay ch−a ..................................... 109<br /> 3.3. C¸ch t¹o lËp hµm trong Maple .........................................................111<br /> 3.3.1.ThiÕt lËp c¸c hµm kÐp (hµm hîp, hµm lång nhau) ....................... 111<br /> 3.3.2. §Þnh nghÜa hµm b»ng to¸n tö mòi tªn (->)..................................... 112<br /> 3.3.3. §Þnh nghÜa hµm b»ng to¸n tö hîp thµnh @.................................... 113<br /> 3.3.4. Dïng chu tr×nh proc()...end ®Ó t¹o hµm.................................... 114<br /> 3.4. C¸c cÊu tróc d÷ liÖu c¬ b¶n ..............................................................117<br /> 3.4.1. CÊu tróc d÷ liÖu d·y ......................................................................... 117<br /> 3.4.2. CÊu tróc tËp hîp vµ danh s¸ch....................................................... 119<br /> TËp hîp...................................................................................................................... 119<br /> Danh s¸ch.................................................................................................................. 119<br /> LÖnh t¹o danh s¸ch vµ tËp hîp.................................................................................. 120<br /> <br /> 3.4.3. CÊu tróc d÷ liÖu b¶ng....................................................................... 122<br /> LÖnh t¹o b¶ng............................................................................................................ 122<br /> <br /> 3.4.4. CÊu tróc d÷ liÖu m¶ng...................................................................... 124<br /> 3.4.5. Sparse, symmetric, nh÷ng gi¶n ®å chØ ®Þnh ®Æc biÖt cho m¶ng vµ<br /> b¶ng ............................................................................................................. 126<br /> <br /> 3.1. C¸c kh¸i niÖm c¬ b¶n<br /> 3.1.1. Tªn (name) vµ x©u kÝ tù<br /> Tªn lµ mét x©u h×nh tù (string of letters) ®−îc dïng nh− mét chØ môc hay mét<br /> nh·n ®Ó ®¹i diÖn cho c¸c ®èi t−îng trong Maple cã thÓ thay ®æi ®−îc (nh− biÕn, kÝ<br /> hiÖu to¸n häc, c¸c biÓu thøc nãi chung,...) mµ ta cã thÓ g¸n cho nã. Tªn lµ mét<br /> trong c¸c thµnh phÇn kh«ng thÓ thiÕu ®−îc cña Maple trong viÖc t¹o ra c¸c biÓu<br /> thøc. ChiÒu dµi tèi ®a cña tªn phô thuéc vµo hÖ m¸y tÝnh mµ Maple ch¹y trªn ®ã<br /> (víi m¸y 32-bit th× chiÒu dµi tèi ®a cña tªn lµ 524275).<br /> BÊt cø biÓu thøc nµo ®Òu cã thÓ ®−îc g¸n cho mét c¸i tªn. NÕu kh«ng cã gi¸ trÞ<br /> nµo ®−îc g¸n cho mét tªn th× nã sÏ nhËn chÝnh tªn nã lµm gi¸ trÞ mÆc ®Þnh.<br /> Ch−¬ng tr×nh Maple sö dông tªn b¾t ®Çu víi mét dÊu g¹ch d−íi ( _ ) lµm c¸c<br /> biÕn toµn côc, vµ v× thÕ chóng ta nªn tr¸nh sö dông chóng.<br /> Mét x©u ký tù bÊt kú (string of characters) cã thÓ kh«ng ph¶i lµ x©u h×nh tù (v×<br /> cã thÓ chøa c¸c ký tù ®Æc biÖt nh−: kho¶ng trèng, dÊu chÊm than,...) vµ do ®ã kh«ng<br /> 86<br /> <br /> thÓ lµ mét tªn hîp lÖ. Tuy nhiªn, Maple cho phÐp t¹o mét tªn tõ mét x©u ký tù bÊt<br /> kú b»ng c¸ch cho nã vµo trong cÆp dÊu nh¸y ®¬n ( ` ) (backquote), thÝ dô nh− x©u<br /> kÝ tù `a variable!` lµ mét tªn biÕn hîp lÖ, vµ ng−êi ta cã thÓ g¸n cho nã gi¸ trÞ 10<br /> b»ng lÖnh `a variable!`:=10.<br /> Mét x©u h×nh tù th−êng lµ mét tªn hîp lÖ vµ ®−îc xem lµ trïng víi tªn ®−îc t¹o<br /> b»ng c¸ch bao chung quanh x©u nµy b»ng cÆp dÊu nh¸y (v× thÕ mµ x vµ `x` ®Òu chØ<br /> ®Õn mét tªn). Tuy nhiªn, nÕu x©u h×nh tù mµ trïng víi tõ khãa cña Maple th×<br /> kh«ng ph¶i lµ mét tªn hîp lÖ, vµ muèn cho nã trë thµnh mét tªn ta l¹i ph¶i cho nã<br /> vµo trong cÆp dÊu nh¸y.<br /> Hai dÊu nh¸y liªn tiÕp trong mét x©u kÝ tù sÏ ®−îc hiÓu nh− lµ mét dÊu. VÝ dô<br /> nh− khi ta viÕt: print(` I``m a student`); th× kÕt qu¶ sÏ cho ta x©u: I`m a student.<br /> <br /> 3.1.2. BiÕn trong Maple<br /> BiÕn trong Maple lµ nh÷ng tªn ®−îc dïng ®Ó thay thÕ cho mét ®èi t−îng nµo<br /> ®ã, th«ng th−êng lµ c¸c gi¸ trÞ cÇn thay ®æi, hoÆc c¸c biÓu thøc tÝnh to¸n cÇn cho<br /> gi¸ trÞ,... Cã hai lo¹i biÕn trong Maple: BiÕn lËp tr×nh vµ biÕn to¸n häc.<br /> BiÕn lËp tr×nh lµ nh÷ng biÕn cã thÓ g¸n bëi mét gi¸ trÞ nµo ®ã vµ gi¸ trÞ ®ã ®−îc<br /> l−u tr÷ cho ®Õn tËn lóc nã thùc sù bÞ thay ®æi.<br /> Mét biÕn to¸n häc thÓ hiÖn cho Èn sè trong to¸n häc, kh«ng thÓ ®−îc g¸n gi¸<br /> trÞ vµ tÊt nhiªn ta kh«ng thÓ dïng nã nh− lµ mét biÕn lËp tr×nh. NÕu b¹n kh«ng<br /> muèn ph©n biÖt biÕn ®−îc g¸n (biÕn lËp tr×nh) vµ biÕn kh«ng ®−îc g¸n (biÕn to¸n<br /> häc) trong Maple th× b¹n cã thÓ nghÜ r»ng biÕn to¸n häc trong Maple lµ biÕn ®−îc<br /> g¸n mµ gi¸ trÞ lu«n b»ng chÝnh tªn biÕn.<br /> BiÕn còng gièng nh− mét tªn, b¾t ®Çu bëi mét h×nh tù, theo sau lµ c¸c ch÷ c¸i<br /> kh¸c, c¸c ch÷ sè, vµ dÊu g¹ch d−íi.<br /> <br /> 3.1.3. Sù ®Þnh gi¸<br /> Mét tªn mµ ®−îc g¸n mét gi¸ trÞ (kh¸c tªn nã) th× sÏ trë thµnh biÕn ch−¬ng<br /> tr×nh, cßn nÕu ch−a tõng ®−îc g¸n mét gi¸ trÞ nµo th× nã nhËn chÝnh tªn nã lµm gi¸<br /> trÞ vµ ®−îc xem nh− lµ mét kÝ hiÖu biÓu thÞ cho Èn sè trong to¸n häc (ch¼ng h¹n<br /> trong ph−¬ng tr×nh, biÕn trong ®a thøc,...). Nh− vËy, viÖc ph©n biÖt mét tªn lµ mét<br /> biÕn ch−¬ng tr×nh hay lµ mét biÕn to¸n häc (mang ý nghÜa lµ Èn sè) lµ rÊt quan<br /> träng ®èi víi Maple trong lóc thùc hiÖn c¸c lÖnh cã chøa tham sè. Ta xem xÐt chi<br /> tiÕt b»ng c¸ch ph©n tÝch mét vÝ dô cô thÓ.<br /> XÐt d·y c¸c phÐp g¸n:<br /> [>restart;<br /> [>z:=y;<br /> y:=t;<br /> t:=x^2+5*x-12;<br /> <br /> 87<br /> <br /> x;<br /> <br /> z := y<br /> y := t<br /> t := x 2 + 5 x − 12<br /> <br /> Trªn ®©y c¸c tªn x, y, z ®Òu ®−îc g¸n gi¸ trÞ (hoÆc lµ tªn biÕn, hoÆc lµ mét biÓu<br /> thøc,...) cßn x th× kh«ng ®−îc g¸n gi¸ trÞ, do ®ã x lµ mét biÕn to¸n häc vµ tÊt nhiªn<br /> x kh«ng chøa gi¸ trÞ nµo (hay nãi ®óng h¬n lµ gi¸ trÞ cña x chÝnh lµ kÝ hiÖu x).<br /> Sau c¸c phÐp g¸n, gi¸ trÞ cña<br /> <br /> z , y , t ®Òu tham chiÕu ®Õn biÓu thøc<br /> <br /> x + 5 x − 12 , chóng ®−îc xem nh− lµ biÕn cã thÓ lËp tr×nh ®−îc, gièng nh− kh¸i<br /> niÖm biÕn trong c¸c ng«n ng÷ lËp tr×nh truyÒn thèng nh− C, Pascal,... Cßn x th× chØ<br /> ®−îc xem lµ biÕn theo ý nghÜa to¸n häc, tøc lµ mét kÝ hiÖu thÓ hiÖn cho mét Èn sè :<br /> 2<br /> <br /> [>z;<br /> x 2 + 5 x − 12<br /> <br /> [>y;<br /> x2 + 5 x − 12<br /> <br /> [>t;<br /> x 2 + 5 x − 12<br /> <br /> BiÕn y cã thÓ ®−îc g¸n bëi c¸c gi¸ trÞ kh¸c, do ®ã néi dung cña nã hoµn toµn thay<br /> ®æi, vµ tÊt nhiªn gi¸ trÞ cña z còng b»ng gi¸ trÞ cña y:<br /> [>y:=10;<br /> y := 10<br /> <br /> [>z;<br /> 10<br /> <br /> Ta cã thÓ hiÓu ®iÒu nµy nh− sau: BÊt cø khi nµo Maple thùc hiÖn viÖc tÝnh to¸n, c¸c<br /> tªn trong biÓu thøc ®Òu ®−îc kiÓm tra xem cã ph¶i chóng ®−îc dïng nh− lµ biÕn<br /> ch−¬ng tr×nh (tøc lµ cã ph¶i chóng ®· ®−îc g¸n gi¸ trÞ) hay kh«ng. NÕu ®óng nh−<br /> vËy, Maple thay thÕ tªn b»ng néi dung cña nã (cã thÓ lµ mét tªn kh¸c, biÕn, h»ng,<br /> hay biÓu thøc,...) vµo trong biÓu thøc ®ang tÝnh, råi sau ®ã nã tiÕp tôc kiÓm tra xem<br /> liÖu cã cßn gi¸ trÞ hay biÕn ch−¬ng tr×nh nµo cã thÓ ®−îc thay thÕ n÷a kh«ng, cßn<br /> nÕu néi dung cña tªn ®Êy chÝnh lµ tªn cña nã th× Maple xem tªn nµy lµ mét biÕn<br /> to¸n häc vµ ®−îc gi÷ nguyªn. Qu¸ tr×nh cø tiÕp tôc nh− vËy cho ®Õn khi kh«ng cßn<br /> tªn nµo ®−îc g¸n n÷a. KÕt qu¶ thu ®−îc, sau khi kh«ng cßn cã thÓ g¸n thªm ®−îc<br /> n÷a, th× ®−îc gäi lµ biÓu thøc ®−îc ®Þnh gi¸ hoµn toµn vµ Maple thùc hiÖn c¸c phÐp<br /> to¸n trªn ®Êy. Nh− vËy, trong vÝ dô trªn, khi ®äc ®Õn z ®Ó in gi¸ trÞ cña nã, Maple<br /> thay thÕ nã bëi y, sau ®ã thay thÕ y bëi 10 råi míi in gi¸ trÞ 10 ra nh− lµ gi¸ trÞ cña<br /> z. Cßn biÕn t vÉn kh«ng thay ®æi néi dung cña nã:<br /> 88<br /> <br /> [>t;<br /> x 2 + 5 x − 12<br /> <br /> BiÕn to¸n häc ch¼ng qua lµ biÕn ch−¬ng tr×nh ®−îc g¸n gi¸ trÞ chÝnh lµ tªn cña<br /> nã. Khi ta g¸n cho nã mét gi¸ trÞ kh¸c (so víi tªn cña nã) th× nã trë l¹i thµnh biÕn<br /> ch−¬ng tr×nh, thÝ dô:<br /> [>x:=10;<br /> x := 10<br /> <br /> Khi x ®−îc g¸n mét gi¸ trÞ sè (nh− trªn), th× néi dung cña t ®−îc tÝnh to¸n nh− thÕ<br /> nµo:<br /> [>t;<br /> 138<br /> <br /> Nh− vËy, t ®−îc −íc l−îng theo gi¸ trÞ x=10 vµ do ®ã t ®−îc tÝnh to¸n thµnh<br /> t:=10^2+5*10-12=138.<br /> <br /> DÜ nhiªn, ta cã thÓ g¸n cho x gi¸ trÞ lµ tªn cña nã (lµ 'x') ®Ó x l¹i trë thµnh biÕn<br /> to¸n häc nh− cò:<br /> [>x:='x';<br /> [>t;<br /> <br /> x := x<br /> x 2 + 5 x − 12<br /> Chó ý Mét lçi mµ nhiÒu ng−êi sö dông Maple th−êng m¾c ph¶i lµ: dïng biÕn i<br /> lµm biÕn ch−¬ng tr×nh, råi sau ®ã th× l¹i dïng i nh− chØ sè cña tæng trong lÖnh tÝnh<br /> to¸n tæng sum. VÝ dô d−íi ®©y minh ho¹ cho vÊn ®Ò nµy.<br /> <br /> [>x:=3;<br /> x := 3<br /> <br /> [>i:=4;<br /> i := 4<br /> <br /> [>x^i!;<br /> 282429536481<br /> <br /> B©y giê xem i nh− lµ kÝ hiÖu to¸n häc vµ thùc hiÖn lÖnh sum() trong ®ã i lµ chØ sè<br /> tÝnh tæng:<br /> 89<br /> <br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2