.


:




:

































 

 

 

 





- .

.

:

- -;

- -;

- -;

- -;

- .

, .

:

procedure P (procedure B; function C: real; Q, W, R: char);

procedure A;

:

- ;

- ;

- .

- . .

procedure Abort (Msg: string);

function Step (N: integer; X: real): real;

, , .. .

- , .

:

Program Par_Znach;

var

A, B: real;

procedure Sum_Square (X, Y: real); {X, Y - }

begin

X:= X*X;

Y:= Y*Y;

Writeln (' =', X + Y);

end;

begin

A:= 1.5;

B:= 3.4;

Sum_Square (A, B); { }

end.

- var .

Procedure Example (var M, N: integer; var Y: real);

- .

.. -.

:

Program Sum_Sub_Square;

var

A, B: real;

Sum AB, Sub AB: real; {Sum, Sub - -}

procedure Sum_Sub (X, Y: real; var Sum, Sub: real);

begin

Sum:= X*X + Y*Y;

Sub:= X*X - Y*Y;

end;

begin

A:= 1.5;

B:= 3.4;

Sum_Sub (A, B, Sum AB, Sub AB); { . - Sum AB Sub AB}

Writeln (' ', A, '', B, '=', Sum AB);

Writeln (' ', A, '', B, '=', Sub AB);

end.

- -.

Turbo Pascal , , , .

, .

, .. :

- ;

- ;

- .

, :

- far {$F+}

- : 1) ;

2) ;

3) inline ;

4) interrupt .

- - procedure function:

Procedure Example (K, L: intrgrt; var M: real; procedure Prob; function Step: real);

K, L - -,

- -,

Prob - -,

Step - -.

: , (, ).

Program Demo_Tab1;

type

Func = function (X, Y: integer_: integer; { Func}

{$F+}

function Add (X, Y: integer): integer; { }

begin

Add:= X + Y;

end;

function Mult (X, Y: integer): integer; { 2- }

begin

Mult:= X*Y;

end;

function Funny (X, Y: integer): integer; { 2- }

begin

Funny:= (X + Y)*(X + Y);

end;

{$F-}

procedure Type_Tab1 (W, H: integer; Operation: Func); { 2- 1 10}

var

X, Y: integer;

begin

for Y:= 1 to H do

begin

for X:= 1 to W do

Write (operation (X, Y): 5);

Writeln;

end;

end;

begin { }

Type_Tab1 (10, 10, Add); {

Type_Tab1 (10, 10, Mult); : +, -

Type_Tab1 (10, 10, Funny); }

end.

, , .

, , ,

.

Pascal-:

, , :

1. , , , .

2. , , .

3. , , , .

:

, D, . , F .

:

Program Example_proc;

procedure P;

procedure A;

var J: integer; { J

}

procedure B;

var J: integer;

begin

Writeln (J);

end;

begin

J:= 1;

B; { }

end;

begin

A; { }

End

31

- , , , string PChar.

, , :

function FuncName (q1: t1; q2: t2;...): FuncType;

< >

begin {FuncName}

p1;

...

pn;

FuncName:=...; { }

end; {FuncName}

FuncName ( );

qi ;

ti ;

FuncType () ;

pj .

:

1. var.

2. , , .

: f (x) =

f (5) =

x , 5 .

3. (, , , ..), , , .. . , , , .. , .

, , () , . , , . for do, .

4. , :

r:=... + FuncName (b1, b2,...);

. . .

5. , .

: n m

1(13.1)

n m (), , . , a, b, c 2:

ab; ac; bc.

:

2(13.2)

, n m n, m, (n-m). k ( k!) :

3(13.3)

:

4(13.4)

(13.1) , . (13.2) (13.3) , :

5(13.5)

- . (13.5) , . First Last -:

 

function Multiple (First, Last: Byte): Longint;

if M < N / 2 then

Cnm:= Multiple (N M + 1, N) / Multiple (2, M)

else

Cnm:= Multiple (M + 1, N) / Multiple (2, N - M);

, M 20 0? M? 20.

program Combine;

{ 20 M}

uses

CRT;

{ }

const

N = 20;

var

M: Byte;

function Multiple (First, Last: Byte): Single;

{ First Last}

var { }

Mult: Single;

i: Byte;

begin {Multiple}

Mult:= 1;

for i:= First to Last do

Mult:= Mult * i;

Multiple:= Mult; { }

end; {Multiple}

begin {Combine}

ClrScr; Writeln;

{"" }

Writeln (' M', ' ':10, ' M', ' ':3, '( 20 M)');

Writeln;

for M:= 0 to N do { M}

begin

{ }

Write (M:4, ' ', Multiple (2, M):20:0, ' '); { M}

{ N M}

if M < N / 2 then

Writeln (Multiple (N - M + 1, N) / Multiple (2, M):10:0)

else

Writeln (Multiple (M + 1, N) / Multiple (2, N - M):10:0);

end; {for i}

end. {Combine}

:

k! k=13 Longint. Multiple Single.

.

, . , .

, . ( ) : ( , , ), , , .

, , , , , ...





:


: 2016-10-06; !; : 821 |


:

:

, , .
==> ...

1779 - | 1674 -


© 2015-2024 lektsii.org - -

: 0.042 .