Главная страница

Программалауда қазіргі қолданылып жүрген технологиялар. Объектіге бағдарланған программалаудың негізгі қағидалары


НазваниеПрограммалауда қазіргі қолданылып жүрген технологиялар. Объектіге бағдарланған программалаудың негізгі қағидалары
страница3/7
Дата08.02.2016
Размер0.97 Mb.
ТипПрограмма
1   2   3   4   5   6   7


Программаның мәтіні:

#include "Unit1.h"

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

class stud

{public:

AnsiString fam, ati;

int tugG;

};

stud grup[10]; int n=0;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)

// 'ЕНГIЗУДI ОРЫНДАУ' батырмасының коды

{

grup[n].fam=Edit1->Text;

grup[n].ati=Edit2->Text;

grup[n].tugG=StrToInt(Edit3->Text);

Memo1->Lines->Add(grup[n].fam+" "+

grup[n].ati+" "+IntToStr(grup[n].tugG));

n++;

Edit1->Clear();Edit2->Clear();Edit3->Clear();

Edit1->SetFocus();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Edit1KeyPress(TObject *Sender,

char &Key)

{

if(Key==13) Edit2->SetFocus();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Edit2KeyPress(TObject *Sender,

char &Key)

{

if(Key==13) Edit3->SetFocus();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Edit3KeyPress(TObject *Sender,

char &Key)

{

if(Key==13) Button1->SetFocus();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

// 'СУРЫПТАУДЫ ОРЫНДАУ' батырмасының коды

{

if(RadioGroup1->ItemIndex==0) //fam boinsha syriptay bastaldi

{ Memo1->Clear();

for(char i='А';i<='Я';i++)

for (int j=0;j
if(grup[j].fam[1]==i)

Memo1->Lines->Add(grup[j].fam+" "+

grup[j].ati+" "+IntToStr(grup[j].tugG));

} // fam boinsha syriptay bitti
if(RadioGroup1->ItemIndex==1) //ati boinsha syriptay bastaldi

{ Memo1->Clear();

for(char i='А';i<='Я';i++)

for (int j=0;j
if(grup[j].ati[1]==i)

Memo1->Lines->Add(grup[j].ati+" "+

grup[j].fam+" "+IntToStr(grup[j].tugG));

} //ati boinsha syriptay bitti
if(RadioGroup1->ItemIndex==2) //tugG boinsha syriptay bastaldi

{Memo1->Clear();

for(int i=0;i
{ stud max=grup[i]; int maxI=i;

for (int j=i;j
if(grup[j].tugG > max.tugG)

{max=grup[j]; maxI=j;}

Memo1->Lines->Add(max.ati+" "+

max.fam+" "+IntToStr(max.tugG));

grup[maxI]=grup[i];

grup[i]=max;

}

}//tugG boinsha syriptay bitti

}
Өзіндік жұмыс тапсымалары:


  1. Қолданушының таңдауына сәйкес тізбек мүшелерін арифметикалық, геометриялық прогрессия ережелері немесе т.б. заңдылықтар бойынша құратын және алынған тізбектің min –элементін табатын және тізбек элементтерін кему реті бойынша орналастыратын программа жазыңыз.

  2. Қолданушының таңдауына сәйкес “Өте жақсы“, “өте жақсы және жақсы“, “жақсы және қанағаттанарлық“, ”тек қанағаттанарлық“ бағалармен оқитын студенттердің тізімін шығарып беретін программа жазыңыз.

  3. Қолданушының таңдауына сәйкес фамилиясы “A”-дан басталатын қызметкерлер тізімін, орташа жалақыдан жоғары жалақы алатын қызметкерлер тізімін, орташа жалақыдан төмен жалақы алатын қызметкерлер тізімін шығарып беретін программа құрыңыз.

  4. Қолданушының таңдауына сәйкес аяқ киім дүкенінің ассортиментінен әйел адамның аяқ киімдерін, ер адамдар аяқ киімдерін, балалар аяқ киімдерін олардың құнымен, шығарған фирмасымен және размерімен көрсететін программаны жазыңыз. Ең қымбат және ең арзан балалар аяқ киімін де көрсететін болсын.

  5. Қолданушының таңдауына сәйкес автосалондағы машиналарды маркасына, шыққан жылына және бағасына және түсіне қарай сұрыптап шығарып беретін программа жазыңыз.

  6. Қолданушының таңдауына сәйкес поликлиникадағы дәрігерлердің аты-жөні бойынша, мамандығы бойынша және еңбек өтілі бойынша сұрыптап шығаратын программа құрыңыз.

  7. Кітапханадағы кітаптарды, авторы, шыққан жылы, бағасы және тиражы бойынша сұрыптайтын программа құрыңыз.

  8. Нақты сандардан тұратын бір өлшемді масивтегі оң және теріс элементтерді сұрыптап шығаратын және оң элементтердің ең үлкенін табатын программа құрыңыз.

  9. Аэропорт анықтамалық бюросының мәліметтеріне сәйкес рейстерді бағыттары бойынша, апта күндері бойынша және номерлері бойынша сұрыптайтын программа құрыңыз.

  10. Стоматологқа келушілердің тізімінен қажет фамилияларды бас әрпі бойынша, келген күні бойынша және дәрігері бойынша сұрыптап шығарып беретін программа құрыңыз.



6 - зертханалық жұмыс.

Қосымшадағы терезелердің және мәзірлердің жұмысын ұйымдастыру. Форма және мәзірлер
Әдістемелік нұсқаулар
Мәзірлер. Барлық Windows қосымшаларында қолданушы интерфейсінің элементі ретінде ең көп тараған элемент – мәзір. Мәзір – қосымшада орындалатын командаларды атқаратын қызметтеріне немесе т. б. белгілеріне қарай бір топқа біріктіріп тиімді пайдалану үшін қолданылады. Windows қосымшаларында қолданылатын мәзірлерді келесі түрлерге бөледі:

  • Жүйелік мәзір (SystemMenu) – бұл, Windows қосымшаларының барлығына тән мәзір түрі, сондықтан C++Builder-де қосымша құрғанда жүйелік мәзір форманың өзімен қоса анықталады. Жүйелік мәзірдің сурет-таңбасы, форманың тақырыптар зонасының сол жағында, ал оның командаларына сәйкес сурет-таңбалар (,  , немесе ) оң жағында орналасады және оларды форманың BorderIcons (типі TBorderIcons) қасиетіндегі biSystemMenu (типі Boolean) мәнін false өзгерту арқылы алып тастауға болады.

Қосымшадағы негізгі мәзір (немесе оны бас мәзір, горизонталь мәзір деп те атайды) формаға MainMenu компонентінің көмегімен қойылады. Қосымшаның жекелеген элементтеріне арналып жасалатын контекстік мәзір (тышқанның оң жақ батырмасын басқанда пайда болатын мәзір) қосымшаға визуальдық емес PopupMenu компонентінің көмегімен енгізіледі.

Мәзір конструкторын пайдалану. C++Builder ортасында формаға қойылған мәзірдің пункттерімен жұмыс жасау үшін Мәзір конструкторын (Menu Designer) қолданады. Оны шақыру үшін формада орналасқан MainMenu немесе PopupMenu компоненттеріне екі рет шерту керек, я болмаса олардың Items қасиеті шақырылады /4.10-сурет/.


4.10- сурет. Мәзір дизайнерінің терезесі.
Жаттығу жұмыстары
Музыка тыңдауды және суреттер қарауды орындай алатын әмбебап қосымша құрыңыз. Қосымша төрт терезеден тұрады. /4.11-сурет(а,б,с,д)/



4.11-сурет. а) Унерверсал программа терезесі

4.11-сурет. б) Музыка терезесі


4.11-сурет. с) Суреттер терезесі


4.11-сурет. д) Анықтама терезесі

1.«Универсал - программа» /Form1/ терезедегі компоненттер қасиеттерінің және оқиғаларының мәндері:


Компоненттің аты

Қасиеттерінің мәндері, оқиғалары

Form1

Caption = 'Универсал-программа'

МainMenu1

N1:

Caption = 'Тандау'

N2:

Caption = 'Музыка'

OnClick = N2Click

N3:

Caption = 'Суреттер'

OnClick = N3Click

N4:

Caption = 'Программа туралы'

N5:

Caption = 'Аныктама'

OnClick = N5Click

N6:

Caption = 'Программадан шыгу'

OnClick = N6Click


Animate1

Active = True

FileName = 'D:\WINDOWS\clock.avi'


«Универсал- программа» терезесінің unit1 мәтіні:

#include

#pragma hdrstop

#include "Unit1.h"

#include "Unit2.h"

#include "Unit3.h"

#include "Unit4.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N2Click(TObject *Sender)

{

Form2->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N3Click(TObject *Sender)

{

Form3->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N6Click(TObject *Sender)

{

Form1->Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N5Click(TObject *Sender)

{

Form4->Show();

}

//---------------------------------------------------------------------------
2. «Музыка» /Form2/ терезедегі компоненттер қасиеттерінің және оқиғаларының мәндері:


Компоненттің аты

Қасиеттерінің мәндері, оқиғалары

Form2

Caption = 'Музыка'

MainMenu1

N1:

Caption = 'Файл'

N2:

Caption = 'Ашу'

OnClick = N2Click

N3:

Caption = 'Жyру'

N4:

Caption = 'Алга'

OnClick = N4Click

N5:

Caption = 'Кейiн'

OnClick = N5Click


Label1

Caption = 'Файл'

Font.Height = -13

Font.Name = 'MS Sans Serif'

Font.Style = [fsBold]

MediaPlayer1

System жапсырмасында орналасқан

OpenDialog1

Dialogs жапсырмасында орналасқан

Edit1

Text қасиеті тазаланады


«Музыка» терезесінің unit2 мәтіні:

#include

#pragma hdrstop
#include "Unit2.h"

#include "Unit1.h"

#include "Unit3.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm2 *Form2;

//---------------------------------------------------------------------------

__fastcall TForm2::TForm2(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm2::N2Click(TObject *Sender) // Файл ->

Ашу пунктінің коды

{

if (OpenDialog1->Execute())

{ Edit1->Text=OpenDialog1->FileName;

MediaPlayer1->FileName=OpenDialog1->FileName;

MediaPlayer1->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall TForm2::N4Click(TObject *Sender)

{

Form3->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm2::N5Click(TObject *Sender)

{

Form1->Show();

}

//----------------------------------------------------------------------------
3. «Суреттер» /Form3/терезедегі компоненттер қасиеттерінің және оқиғаларының мәндері:


Компоненттің аты

Қасиеттерінің мәндері, оқиғалары

Form3

Caption = 'суреттер'

MainMenu1

N1:

Caption = 'Файл'

N2:

Caption = 'Ашу'

OnClick = N2Click

N3:

Caption = 'Жyру'

N4:

Caption = 'Кейін'

OnClick = N4Click

N5:

Caption = 'Программадан шығу'

OnClick = N5Click


OpenPictureDialog1

Dialogs жапсырмасында орналасқан

Image1

Stretch = True


«Суреттер» терезесінің unit3 мәтіні:

#include

#pragma hdrstop

#include "Unit1.h"

#include "Unit2.h"

#include "Unit3.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm3 *Form3;

//---------------------------------------------------------------------------

__fastcall TForm3::TForm3(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm3::N4Click(TObject *Sender)

{

Form2->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm3::N5Click(TObject *Sender)

{

Form1->Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm3::N2Click(TObject *Sender)

{

if (OpenPictureDialog1->Execute())

Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName);

}
4. «Аныктама» / Form4/ терезедегі компоненттер қасиеттерінің және оқиғаларының мәндері:


Компоненттің аты

Қасиеттерінің мәндері, оқиғалары

Form4

Caption = 'Анықтама'

BorderIcons = [biSystemMenu]

biSystemMenu =true

biMinimize=false

biMaximize=false

biHelp=false

Label1

Caption =

'Программа мәзірлермен (MainMenu жане PopupMenu компоненттери ) жумыс жасауды корсететин демонстрациялык програма болып табылады. Программада музыкалык файлдарды тындау ушин MediaPlayer, Image, OpenDialog, OpenPictureDialog компоненттери пайдаланылды.'

WordWrap = True

PopupMenu1

Caption = 'Бул контекстик мәзір -PopupMenu'

Button1

Caption = 'КЕЙIН'

PopupMenu = PopupMenu1

OnClick = Button1Click
1   2   3   4   5   6   7