Professional Documents
Culture Documents
Subprograme Pascal
Subprograme Pascal
Procedure
Function
- Build in Function (e.g. Sin(x))
- Self-defined Function (out of syllabus)
A Pascal Program
program Scope;
var Num1, Num2, Sum : integer;
begin
Num1 := 10;
Num2 := 15;
Sum := Num1 + Num2; What is the
writeln( 'The sum is ', Sum ) sample output ?
end.
Using Procedure
program Scope;
var Num1, Num2, Sum : integer;
What is “FindSum” ?
procedure FindSum;
begin
Sum := Num1 + Num2
end;
begin
Num1 := 10;
Num2 := 15;
FindSum;
writeln( 'The sum is ', Sum )
end.
Global Variables
program Scope; How it
var Num1, Num2, Sum : integer; works ?
procedure FindSum;
begin
Sum := Num1 + Num2
end;
begin
Num1 := 10;
Num2 := 15;
FindSum;
writeln( 'The sum is ', Sum )
end.
Local Variables
program Scope;
var Num1, Num2, Sum : integer;
procedure FindSum;
Which is the
var Sum : integer; local variable?
begin
Sum := Num1 + Num2
end;
begin
Num1 := 10;
Num2 := 15;
FindSum;
writeln( 'The sum is ', Sum )
end.
Parameter Passing
program Scope;
var Num1, Num2, Sum : integer;
procedure FindSum( A, B:integer;
var C:integer);
begin
C := A + B
end;
begin
Num1 := 10;
Num2 := 15;
FindSum( Num1,Num2,Sum );
writeln( 'The sum is ', Sum )
end.
Formal & Actual Parameters
program Scope;
var Num1, Num2, Sum : integer;
procedure FindSum( A, B:integer; How the
var C:integer); data flows
begin in and
C := A + B flows out?
end;
begin
Num1 := 10;
Num2 := 15;
FindSum( Num1,Num2,Sum );
writeln( 'The sum is ', Sum )
end.
Formal & Actual Parameters
program Scope;
var Num1, Num2, Sum : integer;
procedure FindSum( A, B:integer;
var C:integer); Formal
begin vs. actual
C := A + B paramete
end; r
begin
Num1 := 10;
Num2 := 15;
FindSum( Num1,Num2,Sum );
writeln( 'The sum is ', Sum )
end.
Formal & Actual Parameters If I
program Scope; forget
var Num1, Num2, Sum : integer; to type
var…
procedure FindSum( A, B:integer;
var C:integer);
begin
C := A + B
end;
begin
Num1 := 10;
Num2 := 15;
FindSum( Num1,Num2,Sum );
writeln( 'The sum is ', Sum )
end.
Value & Variable Parameters
program Scope;
var Num1, Num2, Sum : integer;
Value vs
procedure FindSum( A, B:integer; Variable
var C:integer); paramete
begin r
C := A + B
end;
begin
Num1 := 10;
Num2 := 15;
FindSum( Num1,Num2,Sum );
writeln( 'The sum is ', Sum )
end.
General format of a procedure
Homework
Text book p.145, exercise 1-4