. Delphi (Pascal) //, :
//
Borland C++ Builder .
. . ( - ) , . .
Position //
Razmer //
SpeedTelegka //
, () , , , .., Tab. , Pascal:
begin
A:=A+i; // <Tab> ,
// for
end;
C++:
{
A+=i; // <Tab> ,
// for
};
begin-end; {-};, . ( ).
. 1.3.
- . , . . . , .
, . , . . Pi, 3.14159265
, . , Pascal ++ 1.1.
1.1
Pascal () | ++ () | ||
0255 | 1 | i:byte; | unsigned char i; |
065 535 | 2 | a:word; | unsigned short int a; unsigned short a; |
0 4 294 967 295 | 4 | b:longword; | unsigned int b; |
-128127 | 1 | i:shortint; | char i; |
-32 768..32 767 | 2 | a:smallint; | short int a; |
-2 147 483 648 2 147 483 647 | 4 | b:longint; b:integer; | int b; |
( , 7 ) 1.18∙10-38 3.4∙10+38 | 4 | c:single; | float c; |
( , 15 ) 2.23∙10-308 1.79∙10+308 | 8 | d:real; d:double; | double d; |
FalseTrue | 1 | f:boolean; | bool f; |
0, a, D, | 1 | s:char; s:=a; // | char s; s=a; // |
N | s:string; s:=aBc; // | AnsiString s; s=aBc; // |
|
|
, .
()
. , , . , :
- ;
- ;
- .
, 1.25, ( !), real double. Pascal :
type //
//
TTelegka = record // TTelegka
// ,
// .
s: real; // 1- ,
v: real; // 2- ,
a: real; // 3- ,
end; //
var //
//
Telegka: TTelegka; // Telegka TTelegka
C++:
typedef //
//
struct // ,
// .
{
double s; // 1- ,
double v; // 2- ,
double a; // 3- ,
} TTelegka; // TTelegka
TTelegka Telegka; // Telegka
// TTelegka
T ( Type). , , . , , .
() .
Pascal:
|
|
Telegka.s:= 0; //
Telegka.s:= Telegka.s + Telegka.v * 0.01;
C++:
Telegka.s = 0; //
Telegka.s = Telegka.s + Telegka.v * 0.01;
(). , . , - , . .
, , . ( 1.1), , ().
Pascal:
S: array [1..10] of integer; //
// S,
// 10
// 1 10
MTelegka: array [1..20] of TTelegka; //
// MTelegka,
// 10 TTelegka
// 1 10
C++:
int S[10]; //
// S,
// 10
// 0 9
TTelegka MTelegka[20]; //
// MTelegka,
// 10 TTelegka
// 0 9
. Pascal:
S[2]:= 10; // S c 2
// 10
MTelegka[i].v:= 1.5; // v MTelegka
// i
// 1.5
C++:
S[2] = 10; // S c 2
// 10
MTelegka[i].v = 1.5; // v MTelegka
// i
// 1.5
, Pascal . C++ 0. 1.
, , . , . ( ) . , i , , . , . , i . , , , , .
Delphi:
|
|
...
var
Form1: TForm1; //
// Form1
Revers: boolean; // . Revers
//
const
Pi: real = 3.14159265; //
//
implementation //
//
{$R *.dfm}
// , Button1
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer; //
// i
const
A: array [0..9] of char = ('0','1','2','3','4','5','6','7', '8','9'); //
begin //
for i:=0 to 10 do
begin
end;
end; //
//
function Polozenie ():real;
var
a,b,c:real; //
i:integer; // , i
begin //
end; //
C++
TForm1 *Form1; //
// Form1
bool Revers; // . Revers
//
const double Pi = 3.14159265; //
//
//--------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//--------------------------------------------------------------
// , Button1
void __fastcall TForm1::Button1Click(TObject *Sender)
{ //
int i; //
// i
//
const char A[10] = {'0','1','2','3','4','5','6','7','8','9'};
...
} //
//--------------------------------------------------------------
double Polozenie (void)
{ //
double a,b,c;
int i;
} //
, . . , , , . .
, , . , , . , .
Pascal :
type MyIntPointer = ^Integer; // .
//
//
function Polozenie ():real;
var
i:integer;
k:MyIntPointer; //
P: ^TButton; // TButton
begin
P:[email protected]; // Button1
P^.Visible:= True; // Button1
//
k:=@i; // i
k^:=10; // i k
inc(k,2); // 2
|
|
// ,
// k
end;
, . () (, k^:=5;), , .
C++:
typedef int *MyIntPointer; // .
//
//
double Polozenie (void)
{
int i;
MyIntPointer k; //
TButton *P; // TButton
P = Form1->Button1; // Button1
P->Visible = True; // Button1
//
k = &i; // i
*k = 10; // i k
k += 2; // 2
// ,
// k
};
, P = Form1->Button1; Button1 P. , C++ , , .
- . , .
, Pascal C++ 1.2.
1.2 Pascal C++
N / | Pascal | ++ | ||||
1 |
| |||||
:= | = | |||||
A:=10; B:=B+1; D:=D-10; | A=10; B=B+1; B++; B+=1; D=D-10; D-=10; | |||||
2 |
| |||||
+ - / * div mod | + - / * (int) AAA/BBB % | |||||
B:=D+C; A:=D div N; | B=D+C; A=(int) D/N; | |||||
3 |
| |||||
and or not | && || ! | |||||
not ((A and B) or (C and D)) | (!((A && B) || (C && D))) | |||||
4 |
| |||||
> < = >= <= <> | > < == >= <= != | |||||
(A = B) ((D <> C) and (N > 1)) | (A == B) ((D!= C) && (N > 1)) | |||||
5 |
| |||||
and or xor shl shr | & | ^ << >> | |||||
A:=11; B:=21; C:=A or B; // C 31 C:=C shl 1; // C 62 | A=11; B=21; C=A | B; // C 31 C=C << 1; // C 62 | |||||
6 | (, ) | |||||
if then begin // // end else begin // // end; | if () { // // } else { // // }; | |||||
7 | () | |||||
case of 1: begin // // // 1 end; 2: begin // // // 2 end; //... else begin // // end end; | switch ( ) { case 1: // // // 1 break; case 2: // // // 2 break; //... default: // // }; | |||||
8 |
| |||||
goto ; | goto ; | |||||
9 | For | |||||
for Var:= Min to Max do begin // end; | for (Var = Min; Var < Max; Var ++ ) { // }; | |||||
for Var:= Max downto Min do begin
// end; | for (Var = Max; Var < Min; Var -- ) { // }; | |||||
10 | While | |||||
while do begin // end; | while ( ) { // }; |