p align="left">void __fastcall TForm2:: Edit2KeyPress (TObject *Sender, char &Key) { if ( (Key >= '0') && (Key <= '9') || (Key == 8)) {} // цифры else { Key = 0; // не цифра } } // --------------------------------------------------------------------------- void __fastcall TForm2:: Edit3KeyPress (TObject *Sender, char &Key) { if ( (Key >= '0') && (Key <= '9') || (Key == 8)) {} // цифры else { Key = 0; // не цифра } } // --------------------------------------------------------------------------- void __fastcall TForm2:: Image1MouseMove (TObject *Sender, TShiftState Shift, int X, int Y) { Label5->Caption = TimeToStr (Now ()); } // --------------------------------------------------------------------------- void __fastcall TForm2:: N3Click (TObject *Sender) { Form2->Hide (); Form1->Show (); Edit1->Text=100; Edit2->Text="2"; Edit3->Text="3"; i,v,l=0; Button2->Enabled=false; Button3->Enabled=false; Form1->Edit1->Text=""; Memo1->Clear (); } // --------------------------------------------------------------------------- void __fastcall TForm2:: Button3Click (TObject *Sender) { Memo1->Clear (); i,v,l=0; Edit1->Text=100; Button3->Enabled=false; Animate1->Visible=false; } // --------------------------------------------------------------------------- void __fastcall TForm2:: N5Click (TObject *Sender) { Form4->Show (); } // --------------------------------------------------------------------------- void __fastcall TForm2:: N6Click (TObject *Sender) { Form5->Show (); } // --------------------------------------------------------------------------- Form3 // --------------------------------------------------------------------------- #include <vcl. h> #pragma hdrstop #include "Unit3. h" #include "Unit2. h" // --------------------------------------------------------------------------- #pragma package (smart_init) #pragma resource "*. dfm" TForm3 *Form3; // --------------------------------------------------------------------------- __fastcall TForm3:: TForm3 (TComponent* Owner) : TForm (Owner) { } // --------------------------------------------------------------------------- void __fastcall TForm3:: Button1Click (TObject *Sender) { Form2->N3->Click (); Form3->Close (); } // --------------------------------------------------------------------------- void __fastcall TForm3:: Button2Click (TObject *Sender) { Form2->Close (); } // --------------------------------------------------------------------------- Листинг программы DelphiForm2unit Unit2;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, Menus, jpeg, ExtCtrls, ComCtrls;typeTForm2 = class (TForm)Image1: TImage;Label1: TLabel;MainMenu1: TMainMenu;N1: TMenuItem;N2: TMenuItem;N3: TMenuItem;N4: TMenuItem;N5: TMenuItem;N6: TMenuItem;Edit1: TEdit;Label2: TLabel;Edit2: TEdit;Label3: TLabel;Button1: TButton;Edit3: TEdit;Label4: TLabel;Button2: TButton;Memo1: TMemo;Image2: TImage;Image3: TImage;Animate1: TAnimate;Button3: TButton;Label5: TLabel;procedure Button1Click (Sender: TObject);procedure FormClose (Sender: TObject; var Action: TCloseAction);procedure N3Click (Sender: TObject);procedure Edit2Change (Sender: TObject);procedure Edit1Change (Sender: TObject);procedure Edit1KeyPress (Sender: TObject; var Key: Char);procedure Edit2KeyPress (Sender: TObject; var Key: Char);procedure Button2Click (Sender: TObject);procedure N2Click (Sender: TObject);procedure Button3Click (Sender: TObject);procedure N5Click (Sender: TObject);procedure N6Click (Sender: TObject);procedure Image1MouseMove (Sender: TObject; Shift: TShiftState; X,Y: Integer);private{ Private declarations }public{ Public declarations }end;varForm2: TForm2;k,v,p,a,b,ns,st,x: integer;prov1, prov2: string;implementationuses Unit1, Unit3, Unit4, Unit5;{$R *. dfm}procedure TForm2. Button1Click (Sender: TObject);beginprov1: =Edit1. Text;prov2: =Edit2. Text;if ( (prov1<>'') or (prov2<>'')) then beginx: =Strtoint (Edit2. Text);st: =Strtoint (Edit1. Text);ns: =Strtoint (Edit3. Text);if ( (x<2) or (x>12) or (st>ns)) thenbeginShowMessage ('Проверьте правильность вводимых данных');endelsebeginbutton2. Enabled: =true;end;endelse beginShowMessage ('Проверьте правильность вводимых данных'); end;end;procedure TForm2. FormClose (Sender: TObject; var Action: TCloseAction);beginForm1. close;end;procedure TForm2. N3Click (Sender: TObject);beginform1. close;end;procedure TForm2. Edit2Change (Sender: TObject);beginButton2. Enabled: =false;end;procedure TForm2. Edit1Change (Sender: TObject);beginButton2. Enabled: =false;end;procedure TForm2. Edit1KeyPress (Sender: TObject; var Key: Char);beginif ( (Key >= '0') and (Key <= '9') or (Key = #8)) then begin end // цифрыelseKey: = #0; // не цифраend;procedure TForm2. Edit2KeyPress (Sender: TObject; var Key: Char);beginif ( (Key >= '0') and (Key <= '9') or (Key = #8)) then begin end // цифрыelseKey: = #0; // не цифраend;procedure TForm2. Button2Click (Sender: TObject);varsum: integer;beginbutton3. Enabled: =true;ns: =Strtoint (Edit3. Text);k: =1+k;a: =0;b: =0;Memo1. Lines. Add ('');Memo1. Lines. Add ('Игрок: '+ Label1. Caption);a: =random (6) +1;Memo1. Lines. Add ('Первый кубик = ' +inttostr (a));b: =random (6) +1;Memo1. Lines. Add ('Второй кубик = ' +inttostr (b));case (a) of1: Image2. Picture. LoadFromFile ('1. jpg');2: Image2. Picture. LoadFromFile ('2. jpg');3: Image2. Picture. LoadFromFile ('3. jpg');4: Image2. Picture. LoadFromFile ('4. jpg');5: Image2. Picture. LoadFromFile ('5. jpg');6: Image2. Picture. LoadFromFile ('6. jpg');end;case (b) of1: Image3. Picture. LoadFromFile ('1. jpg');2: Image3. Picture. LoadFromFile ('2. jpg');3: Image3. Picture. LoadFromFile ('3. jpg');4: Image3. Picture. LoadFromFile ('4. jpg');5: Image3. Picture. LoadFromFile ('5. jpg');6: Image3. Picture. LoadFromFile ('6. jpg');end;sum: =a+b;Memo1. Lines. Add ('Сумма кубиков = ' +inttostr (sum));if (sum=x) thenbeginns: =ns+st*4;Memo1. Lines. Add ('Вы выиграли! Ваш выигрыш увеличин в 4 раза! =) ');Animate1. Visible: =true;Animate1. FileName: = ('win. avi');Edit3. Text: =inttostr (ns);v: =v+1;end;if (sum>x) then beginns: =ns-st;Memo1. Lines. Add ('Вы проиграли! = (');Animate1. Visible: =true;Animate1. FileName: = ('loose. avi');Edit3. Text: =inttostr (ns);p: =p+1;end;if (sum<x) then beginns: =ns+st;Memo1. Lines. Add ('Вы выиграли! =) ');Animate1. Visible: =true;Animate1. FileName: = ('win. avi');Edit3. Text: =inttostr (ns);v: =v+1;end;Memo1. Lines. add ('Всего бросков: ' + Inttostr (k));Memo1. Lines. add ('Из них выигрышей/проигрышей: ' + Inttostr (v) + ' / '+Inttostr (p));if ns<=0 thenbeginform3. Showmodal;end;end;procedure TForm2. N2Click (Sender: TObject);beginForm2. Hide;form1. Show;Button2. Enabled: =false;Button2. Enabled: =false;Memo1. Clear;Edit3. Text: = ('100');Edit1. text: = ('32');Edit2. text: = ('6');k: =0;p: =0;v: =0;form1. Edit1. Text: = ('');end;procedure TForm2. Button3Click (Sender: TObject);begink: =0;p: =0;v: =0;memo1. Clear;Edit3. Text: = ('100');end;procedure TForm2. N5Click (Sender: TObject);beginform4. show;end;procedure TForm2. N6Click (Sender: TObject);beginForm5. show;end;procedure TForm2. Image1MouseMove (Sender: TObject; Shift: TShiftState; X,Y: Integer);beginLabel5. Caption: = TimeToStr (Now ());end;end.Form1unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, jpeg, ExtCtrls;typeTForm1 = class (TForm)Image1: TImage;Label1: TLabel;Edit1: TEdit;Label2: TLabel;Image2: TImage;Image3: TImage;procedure Image2MouseDown (Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);procedure Image2MouseUp (Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);private{ Private declarations }public{ Public declarations }end;varForm1: TForm1;implementationuses Unit2;$R *. dfm}procedure TForm1. Image2MouseDown (Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);beginImage3. Visible: =true;end;procedure TForm1. Image2MouseUp (Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);varname: string;beginImage3. Visible: =false;name: =Edit1. Text;if ( (name = '') or (name = ' ')) thenbeginShowMessage ('Введите имя');endelsebeginForm2. Show;Form1. Hide;Form2. Label1. Caption: =name;end;end;end.Form3unit Unit3;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, jpeg, ExtCtrls;typeTForm3 = class (TForm)Image2: TImage;Button1: TButton;Button2: TButton;procedure Button1Click (Sender: TObject);procedure Button2Click (Sender: TObject);private{ Private declarations }public{ Public declarations }end;varForm3: TForm3;implementationuses Unit2, Unit1;{$R *. dfm}procedure TForm3. Button1Click (Sender: TObject);beginForm2. N2. click;Form3. Close;end;procedure TForm3. Button2Click (Sender: TObject);beginForm1. Close;end;end.ЗаключениеОба языка обладают своими преимуществами и недостатками. И нельзя строго о превосходстве одного над другим - все зависит от того, какую задачу ставит перед собой программист. Так например Pascal более удобен для изучения, является более наглядным для новичков. (И первоначально он был создан как раз для обучения) Но С++ в свою очередь является более компактным, быстрее компилируется. За счет этого на С++ удобнее писать большие и более сложные программы, тогда как Pascal лучше предназначен для обучения и выполнения не самых сложных алгоритмов.Использованная литература1. А. Гусева. Учимся программировать: Pascal 7.0. 2. Фаронов В.В. Turbo Pascal. Учебный курс 3. Бьерн Страустрап. Введение в С++ 4. Липман. С++ для начинающих 5. Эккель Б. Философия С++ 6. http://ru. wikipedia.org/wiki/C++ 7. http://ru. wikipedia.org/wiki/Pascal
Страницы: 1, 2, 3
|