.


:




:

































 

 

 

 


. 1




. . , , .

1.12.

1) Turbo Pascal?

2) Turbo Pascal?

3) Turbo Pascal ?

4) , Turbo Pascal?

5) ?

6) ?

7) ?

8) ?

9) Pascal-?

10) ?

11) Write Writeln?

12) Read Readln?

13) Pascal?

 


2.

2.1.

Pascal IF, CASE GOTO. .

2.2.

1. Turbo Pascal (. 2.5).

2. . , CASE (. 2.7).

2.3.

:

;

;

;

;

.

( ).

2.4.

1. (. 2.8).

2. Turbo Pascal (. 2.5).

3. Turbo Pascal (. 2.5, 2.6, 2.7).

4. (. 2.5). .

5. (. 2.10).

6. (. 1.11).

2.5. Turbo Pascal

, , , . , . :

Readln(N) Writeln(N);

R:= A * B A:= R * B;

;

..

, , . ! , . , , . Turbo Pascal (debugger), :

() ( );

( ) (breakpoint), , ;

, Watches;

;

(call stack).

:

1) , :

1: 2: 3: 4: 5: 6: 7: 8: 9: 10: program DebugTest; var A, B, R: Integer; begin Write(' A, B: '); Readln(A, B); R:= A + B; R:= R * A; Writeln(': ', R); end.  

3 A, B, R. , :, 2 , A B. , R.

(8) R:= R * A, R A, R. , R . .

2) F7 ( Run \ Trace Into) F8 ( Run \ Step over). F7 F8 , (. 5), , F7 . F7. F7 4 (begin) , .

3) F7 5 (Write). , F7 , .

4) F7. Write , 6 (Readln).

5) F7. . Enter A B , , 7 (R:= A + B).

6) , A B , . A, Debug \ Evaluate/modify ( / ) Ctrl+F4. Evaluate and modify, A ( 2.1)

2.1 Evaluate and modify

Expression , , : (A * B) / (A + B). Evaluate , Result. ( ) . New value Modify.

7) F7. 7 , R. R Ctrl+F4.

8) , ( Ctrl+F4). R, Debug \ Add watch (Ctrl+F7) . Turbo Pascal Watches, , ( 2.2). Watches .

2.2 Watches

9) F7 , Watch .

10) Run \ Program Reset (Ctrl+F2).

11) , , . . 8 (R:= R * A), Toggle Breakpoint Ctrl+F8. , ( Ctrl+F8 ).

12) Run \ Run (Ctrl+F9), Enter. , ( ), Turbo Pascal , .

13) (, , ). Debug \ Breakpoints. (Edit) ( , ), (View), (Delete), (Clear all).

14) , . 9 (Write) Run \ Go to cursor (F4). Turbo Pascal , , .

2.6. Pascal

2.6.1. IF

, , . Pascal IF. :

 

if <> then <>;

< >

 

: . , ( , .. TRUE), , THEN. , ;. , , THEN, .

, , , . BEGIN..END.

! , BEGIN..END, . BEGIN..END , BEGIN..END .

, , , BEGIN..END, ( IF) :

 

if A = B then

Begin

< 1>;

< 2>;

...

< N>

end;

 

, (Boolean) : True False ( ). :

= <> >
< >= <=

(A = B) True , A B ; False;

(A <> B) True , A B .

(A > B) True , A , B.

(A >= B) True , A B, , B.

, , True False :

and or
not xor

((A < -1) or (A > 1)) True, A -1 1, .. [-1 ÷ 1].

((A = B) and (A > C * C)) True, A B A C, . , False.

not , , .. (not True) False, (not False) True.

(not (A = B)) True , A B.

xor True , True, False. , ((100 > 50) xor (29 = 30)) True, (100 > 50) True, (29 = 30) False.

 

! Pascal , PROGRAM, VAR BEGIN..END, . ! , .

. A; , .

 

Readln(A); { A}

if A < 0 then A:= 0; { 0, }

Writeln('A: ', A); { A}

 

0. .

 

program Delenie;

Var

Delimoe, Delitel, Res: Real;

Begin

Delimoe:= 100;

Readln(Delitel); { }

if Delitel = 0 then { }

begin { }

Writeln(': !');

Exit; { }

end; { }

Res:= Delimoe / Delitel; { }

Writeln(': ', Res); { }

end.

 

, . IF..THEN ELSE, . IF..THEN :

if <> then <1> else <2>;   if <> then begin < 1>; end else begin < 2>; end;

, ELSE .

2.3 IF..THEN: ELSE .

2.3 if then
else () else ()

X Y Max:

if X > Y then Max:= X else Max:= Y; Write(': ', Max); if X >= Y then begin Max:= X; Write('X Y'); end else begin Max:= Y; Write('Y X'); end; Write(': ', Max);

, IF..THEN , , :

 

if X < -3 then

Y:= X + 1

else if (X > 3) and (X < 10) then

Y:= X * X

else if X >= 10 then

Begin

Y:= Sqrt(X);

Writeln('Y: ', Y);

End

Else

Y:= Y * Y;

, . BEGIN..END . , ELSE , IF..THEN, .

2.6.2.

, CASE, . Pascal (, ), (.. ). , A:= 100 A 100, .. . Pascal : . , CONST : , =, , :

 

program ConstExample;

Const

MinLimit = 1; { }

MaxLimit = 100; { }

Pi = 3.14; { }

.......

Begin

A:= MaxLimit; { , A:= 100}

if B < MinLimit then...

.......

end;

, , , A:= MaxLimit. , . ( ).

, . , 1 / , :

Const

KiloWattCost = 3.45; { 1 / }

 

2.6.3. CASE

 

, (, ) , CASE. CASE IF..THEN, , CASE .

 

CASE :

 

case < > of

< 1>: < 1>;

< 2>: < 2>;

< n>: < N>;

Else

< : >

end;

 

CASE : (, ). , , , :. , , , ELSE. ELSE ( , ).

N 1 3. X N. , N . 0.

 

Write(' n: ');

Readln(n); {, n}

case n of

0: { begin... end }

Begin

Writeln(': 0 !');

Y:= 1;

end;

1: Y:= X;

2: Y:= X * X;

3: Y:= X * X * X;

else { }

{ begin... end }

Writeln(' !');

Y:= 0;

end; { case }

Writeln(': ', Y); { }

 

/ . :

 

case n of

0, 2..4: Y:= A * B; { n: 0, 2, 3, 4}

1, 5: Y:= A / B;

6: Y:= (A + B) * (A - B);

end;

 

, CASE :

; ;

; , ;

(, Integer, Byte, Char, Boolean); Real ( ) string ().

2.6.4. GOTO

GOTO (.: ) , . LABEL , ( ). LABEL ( ) . , GOTO <_>, :

goto M1; { M1} <>; M1: <>; goto M1; { M1}   label M1; var X, Y: Real; begin Readln(X); goto M1; M1: Y:= X * 2 3 / X; Writeln('Y=', Y); end.  

, GOTO , . GOTO , (. ).

 

2.7.

:

program Lab2;

Label

M1, M2; { }

Var

n: Integer;

X, Y: Real;

Flag: Boolean; { N1}

Begin

Writeln(' . : ..');

{ }

Writeln(' :');

Writeln('1 - ');

Writeln('2 - ');

Writeln('3 - ');

Flag:= False; { }

M1:

Write(' : ');

Readln(n); { }

case n of

1: { }

Begin

M2:

Write(' X: ');

Readln(X);

{ }

if X = 0 then

Begin

Writeln('X 0 ');

goto M2; { M2 }

End;

Flag:= True; { 1 , True}

end;

2: { }

Begin

if not Flag then { 1 }

Writeln (' , 1');

Else

begin { 1 }

{ }

if X > 0 then { }

Y:= 1 / X

else { < 0}

Y:= X * X;

Writeln(' X = ', X:7:2, ' Y = ', Y:7:2);

End;

end;

3: Exit; { }

end; { end case }

goto M1; { }

end. { }

 

. (M1, M2) , Flag: Boolean. , : True False. Flag False. , , Flag , .. False True. , 2 CASE Flag (if not Flag then ), , . (if not Flag then ) , 1 X (Flag True).





:


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


:

:

.
==> ...

1528 - | 1460 -


© 2015-2024 lektsii.org - -

: 0.181 .