1 . :
x=0;
while (2*x*x-5*x<500) do
Begin
y:= 2*x*x-5*x;
x:=x+0.3
End;
, .
2.4.5.4
, - . :
Repeat
OP1;
until ( );
:
x=0;
Repeat
y:= 2*x*x-5*x;
x:=x+0.3
until (2*x*x-5*x<500);
=0 '.
, .
7.0 Break Continue. Break . Continue .
2.4.7
if . , . , :
if n<4 then writeln(" ")
else if n<7 then writeln(" ")
else if n<10 then writeln(" ")
else writeln(" ");
, . :
Case () of
: 1;
: 2;
: k
End;
:
Case n of
1,2,3: writeln(" ");
4,5,6: writeln(" ");
7,8,9: writeln(" ");
10,11,12: writeln(" ")
End;
() real. , , Case .
, end TURBO PASCAL Exit Halt.
Exit . Exit , , . Exit , .
Halt, , .
|
|
Halt Halt(n), n - , if errorlevel. n=0 . Halt Halt(0).
2.5
. . :
Abs(Num) - () Num. , Num:=-56.7 , := Abs(Num), 56.7;
ArcTan(Num) - Num ;
Cos(Num) - Num, ;
Sin(Num) - Num, . ;
Exp(Num) - Num;
Frac(Num) - Num. - , Num;
Int(Num) - - Num. - , Num;
Sqr(Num) - Num ;
Sqrt(Num) - Num. Num ;
Odd(Num) - , Num - Num - . , if Odd(Num) then writeln( ) else writeln();
Chr(Num) - . Num , , c:=Chr(65) ;
Ord(Num) - , Num ( Chr);
Trunc(Num) - real integer . , :=67.78; k:=Trunc(a); k=67;
Round(Num) - real integer . , :=67.78; k:= Round (a); k=68;
Random(Num) - 0÷Num, ( ). , 䒺 - 䒺 , - . ,
k:=Random(50); 0÷50;
k:=100+Random(50); 100÷150;
k:=Random(50)-100; - 100÷-50;
:
y:=0;
for i:=1 to 3 do y:=y+Random(100);
y:=y/3;
:
y:=0;
for i:=1 to 10 do y:=y+Random(100);
y:=y/10;
Random - . Randomize.
KeyPressed - , - - . \ .
|
|
2.6
TURBO PASCAL (). .
- not, and, or xor.
not , .
and, or xor - , - . .
- shl shr:
I shl N
I shr N.
ֳ I N . , , , , , . 䒺 , , .
2.7
2.7.1 ,
, , , . '. , , , , .
, , .
, , Rainbow() RED, ORANGE, YELLOW, GREEN, LIGHT_BLUE, BLUE, VIOLET (, , , , , Ͳ, Բ). , , Traffic _ Light (²) RED, YELLOW, GREEN (, , ).
, , , type, :
Type
Rainbow = (RED, ORANGE, YELLOW, GREEN, LIGHT_BLUE, BLUE, VIOLET);
, , . , Traffic_Light Rainbow, .
, , , . :
type Traffic_Light= (RED, YELLOW, GREEN);
var Section: Traffic_Light;
, Section RED, YELLOW GREEN.
, , , :
var Section: (RED, YELLOW, GREEN);
, , , .
, , :
Section:= YELLOW;
, , , , . , Pred, Succ, Ord.
, , .
³ - . ³ , . , , , , . , , .
̳ , . .
|
|
, , , .
, , .
. . -, , . .
'. , :
A[5] S[k+1] B[3,5].
. , . ij . , , 䒺, .
, , :
R1:=Z.
, .
, - . ' .
( ) .
- , :
type Dim10= Array[1..10] of Real;
const raM10: Dim10 = (0, 2.1, 4, 5.65, 6.1, 6.7, 7.2, 8, 8.7, 9.3);
:
type Dim3x2= Array[1..3,1..2] of Integer;
const iaM3x2: Dim3x2= ((1, 2)
(3, 4)
(5, 6));
- FillChar:
FillChar(var V; NBytes: Word; B: Byte);
' . , A[1..10] of Real : FillChar(A, 40, 0) FillChar(A, SizeOf(A), 0);
. ' : . ' , - . PACKED, :
var MAS: Packed Array[1..20] of Char;
:
var M: Array[1..20] of char;
, , Pack, UnPack.
. , . , , , . - . . , .
- , TURBO PASCAL String.
, 30 ,
type s= String[30];
, 255 .
TURBO PASCAL ,
|
|
type s= String;
String .
, , . " ", . 1. Char.
' , . .
, () .
. , . , .
- , ' .
, , , . , , , , , . , , , .
:
const sName: String[9]= 'IBM PC/AT';
FillChar:
FillChar(var V; NBytes: Word; C: Char);
:
FillChar(A, SizeOf(A), '0');
TURBO PASCAL , .
2.8
:
: a:=Volga;
: k:=Length(Str); k- .
' :
1. +: ab+cd abcd.
2. a:=Concat(Str1,Str2,,StrN)...
x s: Str(x,s), .
s x: Val(s,x,code), . code , , 0, , s .
p n s, k- : p:=Copy(s,k,n);
p s: k:=Pos(s,p);. k=0, , . .
p s, k: Insert(s,p,k);
s, p- k : Delete(s,p,k);
2.9
. .
ϳ - , , . '. - .
- . - . .
, - , : , , , , , .
, , . TURBO PASCAL - , , .
:
Type
FuncType = Function(z: Real): Real;
ProcType = Procedure (a,b: Real; var x,y: Real);
, . , :
Type
Proc = Procedure;
ϳ - .
, , . ֳ {$F+}.
|
|
. .
, ' . :
ISimps=2*h/3*(0.5*F(A)+2*F(A+h)+F(A+2*h)+2*F(A+3*h)+...+2*F(B-h)+0.5*F(B)),
A B - ,
N - ,
h=(B-A)/N, N .
Program INTEGRAL;
Type
Func= function(x: Real): Real;
Var
I,TN,TK:Real;
N:Integer;
{$F+}
Function Q(t: Real): Real;
Begin
Q:=2*t/Sqrt(1-Sin(2*t));
End;
{$F-}
Procedure Simps(F:Func; a,b:Real; N:Integer; var INT:Real);
Var
sum, h: Real;
J:Integer;
Begin
if Odd(N) then N:=N+1;
h:=(b-a)/N;
sum:=0.5*(F(a)+F(b));
for j:=1 to N-1 do
sum:=sum+(j mod 2+1)*F(a+j*h);
INT:=2*h*sum/3
End;
Begin
WriteLn(' IJ TN,TK,N');
Read(TN,TK,N);
Simps(Q,TN,TK,N,I);
WriteLn('I=',I:8:3)
End.
2.10
(UNIT) TURBO PASCAL - . , .
- .
TURBO PASCAL .
- , . ϳ - TURBO PASCAL: , , , . , .
:
, , ;
, , .
³ , , , .
:
unit <' >; { }
Interface
{ }
{ }
Begin
{ }
End.
, :
unit <' >; { }
Interface
{ }
Implementation
End.
. , : ', , , . , , , . , - .
( ) ( forward). , .
Make Compile . .TPU (Turbo Pascal Unit). ' .
' , :
Uses CRT, Graph;
, , , , , . , , ', , .
, , :
Unit M;
Interface
var K: Integer;
Implementation
.................
End.
, , :
Program P;
Uses M;
var K: Char;
Begin
.............
End.
, P K M, ' M.K.
, , .
.
, , .
: - . , . , , .
Set of, :
type M= Set of B;
- , - .
:
Type
M= Set of 'A'..'D';
Var
MS: M;
:
Var
C: Set of 0..7;
, , :
['A', 'C'] [0, 2, 7] [3, 7, 11..14].
[ ] .
, , . , , , , , 2 . :
var P: 1..3;
- 1, 2, 3.
var T: Set of 1..3;
:
[ ] [1,2]
[1] [1,3]
[2] [2,3]
[3] [1,2,3]
-.
[T], T - .
(:=), ' (+), (*) (-):
['A','B'] + ['A','D'] ['A','B','D']
['A'] * ['A','B','C'] ['A']
['A','B','C'] - ['A','B'] ['C'].
.
: (=), (<>), (<=), (>=). , :
['A','B'] = ['A','C'] FALSE
['A','B'] <> ['A','C'] TRUE ['B'] <= ['B','C'] TRUE ['C','D'] >= ['A'] FALSE.
in,
, , , . . , :
A in ['A', 'B'] TRUE,
2 in [1, 3, 6] FALSE.
. ' . ,
['A','B','C','D']
'
1 1 1 1.
ϳ :
['A','B','D'] 1 1 0 1
['B','C'] 0 1 1 0
['D'] 0 0 0 1
- .
, , . TURBO PASCAL 256.
:
const seLit: Set of 'A'..'D'= [];
. . , " 5 36".
' . ' :
- 1..36;
- .
Program Lotto;
Var
nb, k: Set of 1..36;
kol, l, i, n: Integer;
Begin
Randomize;
WriteLn('IJ kol');
ReadLn(kol); nb:=[1..36];
for i:=1 to kol do
Begin
k:=[];
for l:=1 to 5 do
Begin
Repeat
n:=Random(36)