ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€. 
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: delphi

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ПослС выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, f = 1 ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹. }. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ дСйствия простого ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΎΠ³ΠΎ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π° (рис. 53). Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1. Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ OnClick Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°. ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹ — ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ дСйствия ΠΊΠ½ΠΎΠΏΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°. ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹ — ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ дСйствия… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: delphi (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹ — ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ дСйствия ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°.

ОписаниС ΠΏΠ»Π°Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

  • 1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.
  • 2. РазмСститС Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ экзСмпляры ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²: Label, Edit, Button (рис. 52).

3. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, запуститС ΠΈ ΠΏΡ€ΠΎΡ‚СстируйтС Π΅Π³ΠΎ.

Окно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Рис. 52. Окно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Листинг ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ procedure TForml. FormCreate (Sender: TObject); begin

Editl.Text Edit2. Text := '';

Edit3.Text := ''; end;

procedure TForml. Button5Click (Sender: TObject); begin

Editl.Text := '';

Edit2.Text := '';

Edit3.Text := 11; end;

procedure TForml. Button6Click (Sender: TObject); begin close; end;

procedure TForml. ButtonlClick (Sender: TObject); begin

a := StrToFloat (Editl.Text); b := StrToFloat (Edit2.Text); c := a + b;

Edit3.Text := FloatToStr (c); end;

procedure TForml. Button2Click (Sender: TObject); begin

a := StrToFloat (Editl.Text); b := StrToFloat (Edit2.Text); c := a — b;

Edit3.Text := FloatToStr (c); end;

procedure TForml. Button3Click (Sender: TObject); begin

a := StrToFloat (Editl.Text); b := StrToFloat (Edit2.Text); c := a * b;

Edit3.Text := FloatToStr (c); end;

procedure TForml. Button4Click (Sender: TObject); begin

a := StrToFloat (Editl.Text); b := StrToFloat (Edit2.Text); if b = 0 then

Edit3.Text := 'division by zero' else begin

c := a / b;

Edit3.Text := FloatToStr (c); end; end;

Π—Π°Π΄Π°Π½ΠΈΠ΅ для ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ выполнСния

1. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ дСйствия простого ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΎΠ³ΠΎ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π° (рис. 53).

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½Ρ‹ΠΉ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€.

Рис. 53. ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½Ρ‹ΠΉ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (для вычислСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ cos (x)).

if Editl. Text ΠΎ '' then begin

a := StrToFloat (Editl.Text); c := cos (a); end;

if Edit2. Text '' then begin

b := StrToFloat (Edit2.Text); c := cos (b); end;

Edit3.Text := FloatToStr (c);

  • 2. Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠ½ΠΎΠΏΠΊΠΈ для вычислСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ tg (x), logab.
  • 3. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ чисСл ΠΈΠ· Π΄Π΅ΡΡΡ‚ΠΈΡ‡Π½ΠΎΠΉ систСмы счислСния Π² Π΄Π²ΠΎΠΈΡ‡Π½ΡƒΡŽ систСму ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ (рис. 54).
ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ чисСл.

Рис. 54. ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ чисСл

ΠšΠ½ΠΎΠΏΠΎΡ‡Π½Ρ‹ΠΉ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€

ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹ — ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ дСйствия ΠΊΠ½ΠΎΠΏΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°.

ОписаниС ΠΏΠ»Π°Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

  • 1. ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.
  • 2. Π Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ экзСмпляры ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²: Edit, Button.
Окно ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Окно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Рис. 55. Окно ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Окно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

К ΡΡ‚ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ Π΄Π°Π½Ρ‹ Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ создана ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ события OnClick. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ событиС OnClick всСх Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1. Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ OnClick Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°.

implementation

{$R *.dfm}

var

accum: real; // аккумулятор

oper: integer; // опСрация: 1 — 2 ;

// 0 — «Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ» (ΠΊΠ½ΠΎΠΏΠΊΠ° «=»).

f: integer;

{ f = Π² ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,

послС выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, f = 1 ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹. }.

// ΠΊΠ½ΠΎΠΏΠΊΠ° 0.

procedure TForml. Button0Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '0'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end

else if Editl. Text '0'.

// Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ Π½Π΅ Π±Ρ‹Π»ΠΎ // Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½ΡƒΠ»Π΅ΠΉ Π² Π½Π°Ρ‡Π°Π»Π΅ числа then

Editl.Text := Editl. Text + '0';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 1

procedure TForml. ButtonlClick (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '1'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '1';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 2

procedure TForml. Button2Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '2'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '2';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 3

procedure TForml. Button3Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '3'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '31;

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 4

procedure TForml. Button4Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '4'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '4';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 5

procedure TForml. Button5Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '5'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '5';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 6

procedure TForml. Button6Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '6'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '6';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 7

procedure TForml. Button7Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '7'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '7';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 8

procedure TForml. Button8Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '8'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '8';

end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° 9

procedure TForml. Button9Click (Sender: TObject); begin

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа

then

begin

Editl.Text := '9'; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + '9';

end;

// дСсятичная Ρ‚ΠΎΡ‡ΠΊΠ°

procedure TForml. ButtonZClick (Sender: TObject); begin

if Editl. Text = '0' then begin

Editl.Text := '0/; f := l; end;

if Pos (',', Editl. Text) = 0 then Editl. Text := Editl. Text +.

end;

// Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ procedure DoOper; var

numb: real; // число Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅

begin

// ассит содСрТит Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ,

// ΠΎΡ€Π΅Π³ — ΠΊΠΎΠ΄ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π°Π΄ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ.

// ΠžΠΏΠ΅Ρ€Π°Π½Π΄ находится Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅. numb := StrToFloat (Forml.Editl.Text); case ΠΎΡ€Π΅Π³ of 0:

accum := numb;

1:

accum := accum + numb;

2:

accum := accum — numb;

end;

Forml.Editl.Text := FloatToStr (accum); end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° «+» .

procedure TForml. ButtonPlusClick (Sender: TObject);

{ Надо Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, вывСсти Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ оТидания ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Ρ‹ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа. } begin

if f = 0 // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ,

// Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ» Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

then

ΠΎΡ€Π΅Π³ := 1 // Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ else begin

// Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ Π΅ΡΡ‚ΡŒ число DoOper; // Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΎΡ€Π΅Π³ := 1; // Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ f := 0; // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа

end; end;

// ΠΊΠ½ΠΎΠΏΠΊΠ°

procedure TForml. ButtonMinusClick (Sender: TObject);

// см. ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ OnCLxck Π½Π° «+» begin

if f = 0 // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ then

ΠΎΡ€Π΅Π³ := 2 else begin

DoOper; // Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΎΡ€Π΅Π³ := 2; // Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ f := 0; // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа

end; end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° «=».

procedure TForml. ButtonEnterClick (Sender: TObject); begin

if f = 0 // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ

then

ΠΎΡ€Π΅Π³ := 0 else begin

DoOper; // Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΎΡ€Π΅Π³ := 0; // Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ f := 0; // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа

end; end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° «Ρ» — очистка

procedure TForml. ButtonCClick (Sender: TObject); begin

Editl.Text := '0'; accum := 0; oper := 0;

f := 0; // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ числа end;

// Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши Π² ΠΏΠΎΠ»Π΅ Editl

procedure TForml. EditlChange (Sender: TObject; var Key: Char); begin

Key := Chr (0); // Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ символы end;

procedure TForml. FormCreate (Sender: TObject); begin

oper := 0; end;

end.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 2. Бобытия OnClick Π½Π° Π²ΡΠ΅Ρ… Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ… ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°.

implementation

{$R *.dfm}

{ 1. Π’ΠΎ Π²Ρ€Π΅ΠΌΡ создания Ρ„ΠΎΡ€ΠΌΡ‹ свойству Tag ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π°Π΄ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ€Π°Π²Π½ΠΎΠ΅ Ρ†ΠΈΡ„Ρ€Π΅, которая Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°.

2. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ создана ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ события OnCLxck для ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для ΠΊΠ½ΠΎΠΏΠΊΠΈ «.1», Π½Π°Π΄ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ событиС OnCLick для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ эта ΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°. ДСлаСтся это Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π² ΡΠΏΠΈΡΠΊΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ появляСтся Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‰Π΅Π»Ρ‡ΠΊΠ° Π½Π° Π·Π½Π°Ρ‡ΠΊΠ΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ строкС Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Events. }.

var

accum: real; // аккумулятор

oper: integer; // опСрация: 1 — 2 —

// 0 — «Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ» (ΠΊΠ½ΠΎΠΏΠΊΠ° «=»).

f: integer;

{ / = 0 ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, послС выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, f = 1 ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹. }.

// НаТатиС Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π²» — «9» procedure TForml. DigitBtnClick (Sender: TObject); var

Btn: TButton; ch: Char; begin

Btn := Sender as TButton; ch := Chr (48 + Btn. Tag);

// chr (48) = '0'; chr{49) = '4β€˜ ΠΈ m. d.

// ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Ρ‚Π°ΠΊ: ch := Btn. Caption; case Btn. Tag of.

1. .9: // ΠΊΠ½ΠΎΠΏΠΊΠΈ «1»  — «9» .

if f = 0 // пСрвая Ρ†ΠΈΡ„Ρ€Π° числа then begin

Editl.Text := ch; f := 1; // ΠΆΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ end else

Editl.Text := Editl. Text + ch;

0: // ΠΊΠ½ΠΎΠΏΠΊΠ° «0».

if Editl. Text '0' //Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ 0 // Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ Π½Π΅ Π±Ρ‹Π»ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½ΡƒΠ»Π΅ΠΉ // Π² Π½Π°Ρ‡Π°Π»Π΅ числа then

Editl.Text := Editl. Text + '0';

end;

end;

// дСсятичная Ρ‚ΠΎΡ‡ΠΊΠ°

procedure TForml. ButtonZClick (Sender: TObject); begin

if Editl. Text = '0' then begin

Editl.Text := '0/; f := 1; end;

if Pos (',', Editl. Text) = 0 then Editl. Text := Editl. Text +.

end;

// Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ procedure DoOper; var

numb: real; // число Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ begin

// accum содСрТит Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ,

// ΠΎΡ€Π΅Π³ — ΠΊΠΎΠ΄ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π°Π΄ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ.

// ΠžΠΏΠ΅Ρ€Π°Π½Π΄ находится Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅. numb := StrToFloat (Forml.Editl.Text);

case oper of 0:

accum := numb;

1:

accum := accum + numb;

2:

accum := accum — numb;

end;

Forml.Editl.Text := FloatToStr (accum); end;

// ΠžΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ «+», «-» ΠΈ «=» procedure TForml. OpBtnClick (Sender: TObject);

{ Надо Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, вывСсти Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ оТидания ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Ρ‹ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа. } var

Btn: TButton; begin

Btn := Sender as TButton;

if f = 0 // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ, Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠ°Π» // Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

then

// свойство Tag ΠΊΠ½ΠΎΠΏΠΊΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΊΠΎΠ΄ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ oper := Btn. Tag // Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ else begin

DoOper; // Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ oper := Btn. Tag; // Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ f := 0; // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа end; end;

// ΠΊΠ½ΠΎΠΏΠΊΠ° с — очистка

procedure TForml. ButtonCClick (Sender: TObject); begin

Editl.Text := '0'; accum := 0; oper := 0;

f := 0; // ΠΆΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ числа end;

// Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши Π² ΠΏΠΎΠ»Π΅ Editl

procedure TForml. EditlChange (Sender: TObject; var Key: Char); begin

Key := Chr (0); // Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ символы end;

procedure TForml. FormCreate (Sender: TObject); begin

oper := 0; end;

end.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ