2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 maple procedures...
DESCRIPTION
2007/04/17 AGENDA Anonymous procedures Procedures & data structures Procedure data structure Remember tables Recursion procedures Skills to create procedure &execution groupTRANSCRIPT
![Page 1: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/1.jpg)
2007/04/17
9550395503 統資軟體課程講義統資軟體課程講義Maple Procedures
指導教授:蔡桂宏 博士學生 :熊承慧學號 : 95356053
![Page 2: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/2.jpg)
2007/04/17
AGENDA• Difference• Main Topic• Execution Group Procedures• Parameter, Local, Global variables• Execution vs. Procedure• Use the Procedure• Maple function=procedure
![Page 3: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/3.jpg)
2007/04/17
AGENDA• Anonymous procedures • Procedures & data structures• Procedure data structure• Remember tables• Recursion procedures• Skills to create procedure &execution group
![Page 4: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/4.jpg)
2007/04/17
Difference
Underlying Idea• Maple expression~~ data structure• Maple function~~ procedureInitial Definition• Data structure~~ a collection of data• Procedure~~ a collection of instructions
![Page 5: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/5.jpg)
2007/04/17
Main Topic
• Know the meaning of a collection of instructions• How to turn a collection of instructions into a
procedure• Know a procedure is more than a collection of
instructions• How mathematical functions can be represented
by Maple procedures• How procedures can manipulate data structures
![Page 6: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/6.jpg)
2007/04/17
Execution Group Procedures• ex1:
Get the largest prime factor in a positive integer n> 650650; # Choose a positive integer.> ifactor( % ); # Factor it.> op( nops(%), % ); # Pick off the largest (i.e., last) factor.> op( 1, % ); # Get the base of the exponential.> op( 1, % ); # Remove the parentheses.
![Page 7: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/7.jpg)
2007/04/17
Execution Group Procedures• 只要結果,把最後一行之前的;改成 :• 上頁是由許多不同的指令所組成的,想再使用時必須回到此指令所在處,更改 n 值,較為麻煩• 再使用 execution group 的方法就是轉換成 Procedure的型態 A. 命名 B. 改值 即可得到答案
![Page 8: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/8.jpg)
2007/04/17
Execution Group Procedures> largest_prime := proc(n)> ifactor( n ); # Factor the input.> op( nops(%), % ); # Pick off the last factor.> op( 1, % ); # Get the base of the exponential.> op( 1, % ); # Remove the parentheses.> end;
•proc~~ end•Name it•Call the procedure•Input parameter: inside the parentheses after proc
![Page 9: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/9.jpg)
2007/04/17
Execution Group Procedures• Calling the procedure> largest_prime( 650650 );
• With different input> seq( largest_prime(i), i=550550..550560);
PS : seq - create a sequence
Actual parameter
Print the last command
![Page 10: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/10.jpg)
2007/04/17
Execution Group Procedures> plus := proc(x,y)> x - y;> x * y;> x + y; # This is the return value.> end;
plus( 3, 4 );
![Page 11: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/11.jpg)
2007/04/17
Parameter, Local, Global variables> plus := proc(x,y)> local a, b; > global c;> a := x - y;> b := x * y;> c := x ^ y;> x + y; # the return value> end;
Parametervariables
localvariables
globalvariable
![Page 12: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/12.jpg)
2007/04/17
Parameter, Local, Global variables
• local variables only "live" inside the procedure call.
• global variables inside procedure bodies are really the same as the variables we use in commands at our worksheet prompts.
![Page 13: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/13.jpg)
2007/04/17
Parameter, Local, Global variables> plus( 2, 5 );
7> a; b; c;
a and b inside plus have no affect on the "global"
a and b
"global" variable c in our worksheet is the same
variable as the c inside plus > plus( -2, 2 );
> c;
> x; y;parameter variables are a
kind of local variable
![Page 14: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/14.jpg)
2007/04/17
Execution vs. Procedure• ex2find the i 'th digit (from the right) of an integer• put commands in an execution group> n := 200!:> i := 50:> 10^(-i)*n: moves the decimal point to the left of the i'th digit of
> frac( % ): get the fractional part of the last result
> 10*%: moves the decimal point over to the right one place
> trunc( % ); truncates off the fractional part of the last result leaving us with just the digit we want
![Page 15: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/15.jpg)
2007/04/17
Execution vs. Procedure• put commands into the body of a procedure> get_digit := proc(n,i)> 10^(-i)*n;> frac( % );> 10*%;> trunc( % );> end;
![Page 16: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/16.jpg)
2007/04/17
~Command definition• frac - fractional part of a number> frac(8/3); 2/3• trunc - truncate a number to the next nearest
integer towards 0 These functions compute integer or fractional parts of
numbers. For real arguments x: For x >= 0, trunc(x) is the greatest integer less than or
equal to x. For x < 0, trunc(x) = -trunc(-x). > trunc(8/3); 2
![Page 17: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/17.jpg)
2007/04/17
Use the Procedure
• Find the 15'th digit of 47! and the 257'th digit of 200!
> get_digit( 47!, 15 );> get_digit( 200!, 257 );• Get the expression sequence of a positive integer n’s
digits> n := 30!:> seq( get_digit(n, length(n)-i), i=0..length(n)-1 );
> { % };
![Page 18: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/18.jpg)
2007/04/17
> plus := proc(x,y)> x+y;> end;
> plus( 5, plus(3,4) );
> plus := proc(u,v)> u + v;> end;
> evalb( proc(u,v) u+v end = proc(x,y) x+y end );
Use the Procedure
![Page 19: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/19.jpg)
2007/04/17
~Some amazing property
• 3435~~ the sum of its digit raised to its own power > n := 3435;> L := digits( n );> add( i^i, i = L ); # Add up the digits raised to their own
power.
• 40585~~ factorians. > n := 40585;> L := digits( n );> add( i!, i = L ); # Add up the factorials of the digits of n.
![Page 20: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/20.jpg)
2007/04/17
~Some amazing property
• digital invariant 2~~> n := 115132219018763992565095597973971522401;
> L := digits( n ); # There are 39 digits.
> add( i^nops([L]), i = L );
• digital invariant 1~~> n := 82693916578;> L := digits( n );> add( i^nops([L]), i = L ); # The power is the number of digits.
![Page 21: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/21.jpg)
2007/04/17
Maple function=procedure
![Page 22: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/22.jpg)
2007/04/17
Anonymous procedures
call the procedure
We can give the procedure a name
Call the procedure by its new name
![Page 23: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/23.jpg)
2007/04/17
Anonymous proceduresConverting the procedures into execution groups
![Page 24: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/24.jpg)
2007/04/17
Anonymous proceduresDefine ,call, and name the result in a single command
It’s still an anonymous procedure
Execution group
![Page 25: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/25.jpg)
2007/04/17
~Command definition
• cat - concatenating expressions• The cat function is commonly used to
concatenate strings and names together. • A string is a sequence of characters that has no
value other than itself. It cannot be assigned to, and will always evaluate to itself.
• A string is written by enclosing any sequence of characters within a pair of double quote characters (" ").
![Page 26: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/26.jpg)
2007/04/17
Procedures & data structures• Compute the average of two, three, and four numbers
![Page 27: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/27.jpg)
2007/04/17
Procedures & data structures
• Call the procedures
![Page 28: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/28.jpg)
2007/04/17
Procedures & data structures
• using a data structure to solve a programming problem
procedure to average any number of numbers. one input parameter, the input is a data structure
![Page 29: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/29.jpg)
2007/04/17
Procedures & data structures
• Call the avg procedure
![Page 30: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/30.jpg)
2007/04/17
Procedures & data structures• Input a list of lists, a list of polynomials, and
a list of sets
![Page 31: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/31.jpg)
2007/04/17
Procedures & data structures
Rewrite the procedure using args and nargs
Call the new version of avg
args - The sequence of actual arguments
passed to a procedure
![Page 32: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/32.jpg)
2007/04/17
Procedures & data structuresUse the args and nargs variables
Returns the actual parameter list
Counts how many parameter it was called with
![Page 33: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/33.jpg)
2007/04/17
Procedures & data structures• Procedures work only in the way we want~ type declaration of formal parametersex: L represents a list of numbers
Type declaration is held in a “”data structure
![Page 34: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/34.jpg)
2007/04/17
Procedures & data structures
Avg take only one input2 is not a list as we defined before
You have to input 3 numbers
correction
![Page 35: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/35.jpg)
2007/04/17
Procedure data structure
• Procedures are another kind of data structure
Check the data type of f evaluation
Data type of f
Data type of f’s value
![Page 36: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/36.jpg)
2007/04/17
Procedure data structure
• op shows us the definition of the procedure f
• Get the contents of the procedure data structure
![Page 37: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/37.jpg)
2007/04/17
Procedure data structure• 8 operands in the procedure data structure
• What are the 8 operands ? Formal parameter names
Local variable names
optionsRemember table
Description string
Global variable namesLexical table
Return type
![Page 38: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/38.jpg)
2007/04/17
Procedure data structure
• Show the data structure
![Page 39: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/39.jpg)
2007/04/17
Procedure data structure• The option sections: The ``options'' part of a
procedure or module definition appears immediately after the declarations of local and global variables.
arrow builtin inline operator remember system trace copyright
![Page 40: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/40.jpg)
2007/04/17
Procedure data structure
• The options arrow, builtin, inline, operator, and remember can be used only in procedure definitions.
• Option operator declares to the Maple system that the procedure was entered and is to be printed and otherwise manipulated as an operator.
![Page 41: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/41.jpg)
2007/04/17
Procedure data structure
• The option trace can be used in procedure and module definitions.
• Option trace makes the procedure or module executeas though it were under a sufficiently high value of printlevel as to show the entry and exit calls and all the internal statements. This effect is independent of the value of printlevel, and is confined to the procedure or module that has the option.
• The option trace can help us finding mistakes.
![Page 42: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/42.jpg)
2007/04/17
Procedure data structure
![Page 43: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/43.jpg)
2007/04/17
Procedure data structure• define another procedure with the trace option th
at calls the procedure f
![Page 44: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/44.jpg)
2007/04/17
Procedure data structure
args - The sequence of actual arguments
passed to a procedure
the result of f(2,2)
u in g
the result of f(3,3)
v in g
the result of g
![Page 45: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/45.jpg)
2007/04/17
Procedure data structure• ex: input a name and a positive integer and trun
cates the name to the integer number of letters
![Page 46: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/46.jpg)
2007/04/17
Procedure data structure• Find the mistake~ to reverse the letters in a name
error occurs here
Something wrong
![Page 47: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/47.jpg)
2007/04/17
Procedure data structure• the correction
![Page 48: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/48.jpg)
2007/04/17
Remember tables
• The remember table is accessible as operand 4 of the procedure structure--use op(4,eval(f)) if the name f has a procedure definition assigned to it. It can then be manipulated as an ordinary Maple table.
• Improving the computational efficiency • Giving Maple symbolic abilities• Save time but use more memory
![Page 49: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/49.jpg)
2007/04/17
Remember tablesno remember
with rememberoption
![Page 50: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/50.jpg)
2007/04/17
Remember tables• evaluate f at some input , remember table shows
• put more values in f’s remember table
![Page 51: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/51.jpg)
2007/04/17
Remember tables• redefine the procedure
Call the first time
Call the second time
Call the first time
Call the second time
![Page 52: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/52.jpg)
2007/04/17
Remember tables• speed up the calculations~ see the remember ex
![Page 53: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/53.jpg)
2007/04/17
Remember tables• factor & expand remember table
![Page 54: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/54.jpg)
2007/04/17
Remember tables• The Problem : Stale data
g calls h
Change the definition of h
You get the same answer
Remember table
![Page 55: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/55.jpg)
2007/04/17
Remember tables
• Solve the problem “stale data” 1.restart or 2.forget
![Page 56: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/56.jpg)
2007/04/17
Remember tables
• symbolic abilities sin(Pi/3) is in the remember table and make use of
it to compute sin(4*Pi/3).
Maple does not have this symbolic result in its remember table for sin.
![Page 57: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/57.jpg)
2007/04/17
Remember tables• Teach Maple the value Maple does not
have this symbolic result
Teach Maple
![Page 58: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/58.jpg)
2007/04/17
Remember tables• Another problem
The function doesn’t have any rule to compute.
f(x):=3*x^2-1 create a procedure with only remember table
containing one entry that defines the output of the function for the
single input x
![Page 59: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/59.jpg)
2007/04/17
Remember tables
Redefine g
Incorrect ans
Check the definition of g in
another way
Check the definition of g
g(x):=100*x-1 didn’t redefine g, just give a remember table with
one entry in it
![Page 60: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/60.jpg)
2007/04/17
Recursion procedures• A procedure is recursive which would mean that t
he procedure is defined in terms of itself. • It provides very compact and elegant solutions to
a programming problem. • It consumes massive amounts of computer memo
ry when executes. • Ex:n!=n*(n-1)! This recursive definition defines fac
torials in terms of factorials. The factorial symbol appears on both side of the equal sign in the definition.
• We don’t know when to stop. We need something to bring the “recursion” to a halt. For the factorial function, that something is the rule that 0!=1.
![Page 61: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/61.jpg)
2007/04/17
Recursion procedures
• For the factorial function Recursion procedures, the rule 0!=1 can make it stop. With that rule the calculation of 5!
5! = 5*(4!) = 5*(4*(3!)) = 5*(4*(3*(2!))) = 5*(4*(3*(2*(1!)))) = 5*(4*(3*(2*(1*(0!)))))
• The complete recursive definition of the factorial function has two parts n! =n(n-1)! 0!=1
.
![Page 62: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/62.jpg)
2007/04/17
Recursion procedures• When we write recursive procedures, we always have to do something to avoid infinite recursion.• We need a definition to stop the recursion after a finite number of steps (by using an if-then-else-fi )
![Page 63: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/63.jpg)
2007/04/17
Recursion procedures• How to write the factorial recursion procedures?
The line of the procedure it calls itself,
the conditional statement that checks if the input is zero
![Page 64: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/64.jpg)
2007/04/17
Recursion procedures
•compute some factorials using recursive procedure
•factorial function built into Maple so that we can check
![Page 65: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/65.jpg)
2007/04/17
Recursion procedures• To visualize the workings of this recursive procedure
use right-quotes to delay the evaluation
call it and keep evaluating the output until it is fully evaluated.
![Page 66: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/66.jpg)
2007/04/17
Recursion proceduresUse the option trace
![Page 67: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/67.jpg)
2007/04/17
The trace of the output
![Page 68: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/68.jpg)
2007/04/17
Recursion procedures
• ex: the procedure adds up all the numbers in a list
using “if-then-else-fi”
![Page 69: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/69.jpg)
2007/04/17
Recursion procedures
add_list with option trace
add_list with delayed evaluation
![Page 70: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/70.jpg)
2007/04/17
the addition gets done from right to left in the list, not from left to right
![Page 71: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/71.jpg)
2007/04/17
![Page 72: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/72.jpg)
2007/04/17
Difference here
less procedure
s
![Page 73: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/73.jpg)
2007/04/17
Recursion procedures
• To find the largest number in a list of numbers.Step1: finds the larger of just two numbers
Step2: use bigger to create a recursion procedure biggest
![Page 74: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/74.jpg)
2007/04/17
Recursion proceduresTest it
Test biggest on a list of randomly chosen integers
![Page 75: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/75.jpg)
2007/04/17
Recursion procedures
• With “delay” evaluation
Something wrong
![Page 76: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/76.jpg)
2007/04/17
Recursion procedures
• Fix the problem by modifying the definition of bigger
![Page 77: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/77.jpg)
2007/04/17
Recursion procedures
• With “trace”
![Page 78: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/78.jpg)
2007/04/17
Recursion proceduresThe result of option trace
![Page 79: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/79.jpg)
2007/04/17
Recursion procedures
• Another way to visualize Only one trace here
![Page 80: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/80.jpg)
2007/04/17
Recursion proceduresThe result of one trace
Call it
![Page 81: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/81.jpg)
2007/04/17
Recursion procedures• Use the option remember in the recursion
procedures to save the timewithout remember~~ test the file: remember ex2
for
![Page 82: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/82.jpg)
2007/04/17
Recursion procedures
• the tree diagram
Fib(28) 2 times,Fib(27)
3 times, Fib(26) 5times
and so on..
![Page 83: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/83.jpg)
2007/04/17
Recursion procedures
• With remember:~~ test the file: remember ex3
![Page 84: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/84.jpg)
2007/04/17
Recursion procedures
• another ex: a function f from the real line to the real line is periodic with period p if 0<p, and f(x+p)=f(x), for all real numbers x
• It’s almost a recursive definition since it defines f in terms of itself. But this definition is not recursive because it does not contain any kind of a terminating condition.
• How we adapt this definition to give a recursive definition of a specific periodic function?
![Page 85: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/85.jpg)
2007/04/17
Recursion procedures• Let g be a function defined on the interval from a
to b, where a<b and b-a=p . • The recursive definition of a function f which is a
periodic extension of g to the whole real line is as follows
terminating condition
f is defined in terms of f
![Page 86: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/86.jpg)
2007/04/17
Recursion procedures• ex:
• then:
![Page 87: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/87.jpg)
2007/04/17
Recursion procedures• 1.define a, b, p, g
Continuous function
Expression of g
![Page 88: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/88.jpg)
2007/04/17
Recursion procedures
• 2.define f
• evaluate f
• f has a limit of 0.36
![Page 89: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/89.jpg)
2007/04/17
Recursion procedures
![Page 90: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/90.jpg)
2007/04/17
Recursion procedures
• Try f using another g,g(x)=
Write the function of g
![Page 91: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/91.jpg)
2007/04/17
Recursion procedures• g(x)=
Write the function of g
![Page 92: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/92.jpg)
2007/04/17
Recursion procedures
• g(x)=
![Page 93: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/93.jpg)
2007/04/17
Skills to create procedure &execution group
• to create many input lines that are needed :Ctrl-j• to combine the input lines into an execution
group : place the cursor on the first of the input lines and type
a.F4 key or b."Edit -> Split or Join -> Join Execution Groups" menu
item • Each time you hit the F4 key, the prompt below
the current execution group is merged into the current execution group.
• Undo: Ctrl-z
![Page 94: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/94.jpg)
2007/04/17
• to split the execution group: place the cursor at the beginning of the line you want to split and type
a.F3 key or b."Edit -> Split or Join -> Split Execution Group" menu
item• to add a new line between two lines: after
splitting, a. place the cursor at the beginning of the line after the
line you want to add and type Ctrl-k or b. place the cursor at the beginning of the line before the
line you want to add and type Ctrl-j Then ……place the cursor at the beginning of the
first line and type F4 twice
![Page 95: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/95.jpg)
2007/04/17
Skills to create procedure &execution group
• place the cursor at the end of the line before where you want to add, type Shift-Enter key combination). that this line does not have its own prompt on its left hand edge. This new line is really a continuation of the above line.
• If a procedure definition is short, it can fit on a single line.
ex: > test := proc(n::integer) 13*n; factor(n); end;
• But it’s better on several lines to make the definition easier to read.
![Page 96: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/96.jpg)
2007/04/17
Place the cursor anywhere in this line and hit Enter. Maple gives you a new prompt, and also a warning. Just ignore the warning and type the command from. Then hit enter again.
enter the closing word (the end;) and hit Enter. Maple will give you the procedure definition.
![Page 97: 2007/04/17 95503 統資軟體課程講義 95503 統資軟體課程講義 Maple Procedures 指導教授:蔡桂宏 博士 學生 :熊承慧 學號 : 95356053](https://reader033.vdocuments.net/reader033/viewer/2022061517/5a4d1b147f8b9ab059990ec0/html5/thumbnails/97.jpg)
2007/04/17
To create a multi-line for-loop or while-loop : after you typing the key word” for” on a line, keep hitting Enter to create new input lines until you enter the closing key word od (or end do