Тапсырма. Жүгіру жылдамдығын есептейтін бағдарлама құру.
Тапсырманың орындалу әдістемесі::
1. Delphi 7 бағдарламасын іске қосыңыз: Пуск = Borland Delphi = Delphi 7.
2. Delphi 7 бағдарламасының Терезесін мұқият қараңыз.
3. Жаңа жоба құру: File = New = Application. Оны «Мои документы» бумасында құрылған жоба бумасында сақтаңыз.
4. Бастапқы формасында қосымшаның келесі терезесін құрыңызңыз:
Сурет 7.2.
5. Бастапқы форманың келесі қасиеттерін тағайындаңыз:
|
Қасиет
|
Мәні
|
|
Қасиет
|
Мәні
|
1
|
Caption
|
Скорость бега
|
4
|
BorderStyle
|
bsSingle
|
2
|
Height
|
250
|
5
|
Font Size
|
12
|
3
|
Width
|
330
|
|
|
|
6. Суретте көрсетілген компоненттерді Standart компоненттер палитрасынан формаға орналастырыңыз.
7. Бұл компоненттерге келесі қасиеттерді тағайындаңыз:
Қасиет
|
Компонент
|
Label1
|
Label2
|
Label3
|
Label4
|
AutoSize
|
False
|
True
|
True
|
False
|
WordWrap
|
True
|
False
|
False
|
True
|
Caption
|
Программа вычислит скорость, с которой спортсмен пробежал дистанцию
|
Дистанция (м)
|
Время (мин, сек)
|
|
Top
|
8
|
56
|
88
|
120
|
Left
|
8
|
8
|
8
|
8
|
Height
|
35
|
|
|
41
|
Width
|
210
|
|
|
273
|
Қасиет
|
Компонент
|
Edit1
|
Edit2
|
Button1
|
Button2
|
Text
|
Алаң ішін тазалау
|
Алаң ішін тазалау
|
|
|
Caption
|
|
|
Вычислить
|
Завершить
|
Top
|
56
|
88
|
176
|
176
|
Left
|
128
|
128
|
16
|
112
|
Height
|
21
|
21
|
25
|
25
|
Width
|
121
|
121
|
75
|
75
|
8. Форманың сыртқы түрін рәсімдегенннен кейін батырмаларды бағдарламалауға кірісеміз. Завершить батырмасын белгілеу, объектілер инспекторы терезесінде Events қойындысына (вкладка) өту және OnClick оқиғалар алаңына екі рет шерту. Ашылған кодты редакторлеу терезесінде тек ғана Form1.Close; командасын теріңіз:
procedure TForm1.Button2Click(Sender: TObject);
begin
Form1.Close;
end;
9. Жұмыс жасаушы бағдарламада Завершить батырмасын шертіңіз.
10. Дәл осылай Вычислить батырмасы үшін де процедура жазыңыз:
procedure TForm1.Button1Click(Sender: TObject);
var
dist : integer;
t: real;
min : integer;
sek : integer;
v: real
begin
dist := StrToInt(Edit1.Text); //Енгізу алаңындағы мәтіндік мәнді сандық мәнге түрлендіру
t := StrToFloat(Edit2.Text);
min := Trunc(t);
sek := Trunc(t*100) mod 100;
v := (dist/1000) / ((min*60 + sek)/3600);
label4.Caption := 'Дистанция: '+ Edit1.Text + ' м' + #13 +
'Время: ' + IntToStr(min) + ' мин ' + // сандарды кері мәтіндікке түрлендіру
IntToStr(sek) + ' сек ' + #13 +
'Скорость: ' + FloatToStrF(v,ffFixed,4,2) + ' км/час';
end;
11. Бас мәзірден Run => Run командасын немесе құрал саймандар тақтасынан Run батырмасын шертіп немесе F9 функцияналдық пернесін басу арқылы бағдарламаны орындауға жіберіңіз.
Өз бетімен орындауға арналған тапсырмалар:
1. Трапецияның a,b қабырғалары және h биіктігі берілген. Трапецияның ауданын анықтайтын бағдарлама құру .
2. Қабырғалары a,b,с үшбұрыштың медианаларын анықтайтын бағдарлама құру.
3. Шеңбердің радиусының өлшемі берілген, оның ауданын анықтайтын бағдарлама құру
4. Кез-келген үш сан енгізіп, олардың ішіндегі ең кішісін анықтайтын бағдарлама құру
5. Светофордан өту бағдарламасын құру.
Бақылау сұрақтары:
1.Жоғарғы деңгейлі программалау тілдерін атаңыз.
2.Delphi 7.0. программалау ортасы қандай терезелерден тұрады?
3.Стандартты компоненттерді атаңыз?
4.Ішкі программа дегеніміз не?
5.Формальды және нақты параметрлер.
6.Функция дегеніміз не?
7.Функция қалай беріледі?
8.Процедура дегеніміз не?
9.Процедура қалай беріледі?
10.Объектілі- бағдарлы программалау принциптері
Тәжірибелік сабақ №8. Енгізу-шығару және редакциялау компоненттері, тізімдер мен кестелерді құру.
Мақсаты: Delphi7 бағдарламалау ортасында мәтіндік ақпараттарды енгізуге және көрсетуге арналған компоненттермен танысу, қасиеттерін талдау және оларды қолдану арқылы қарапайым жобаларды құруды үйрену. Массивке арналған есептер шығару.
Қажетті құралдар: MS Windows операциялық жүйесі бар дербес компьютер, Borland Delphi 7.0 бағдарламасы.
Теориялық мәлімет. Мәтіндік ақпараттарды енгізуге және көрсетуге арналған компоненттер келесідей:
Компонент
|
Парақша
|
Сипаттамасы
|
Label
|
Standard
|
Жұмыс жасау кезінде қолданушы өзгерте алмайтын мәтін көрсетіледі
|
StaticText
(бордюр таңбасымен)
|
Additional
|
Label –ге қосымша бордюр стилін тағайындауға мүмкіндік береді.
|
Panel
|
Standard
|
Басқару элементтерін топтастыруға арналған контейнер болып табылады, бірақ мәтіндік ақпарат көрсетуші ретінде де қолдануға болады.
|
Edit
|
Standard
|
Бір жолдық мәтіндерді көрсету, енгізу мен редакторлеу
|
MaskEdit
(маскалы редакторлеуге арналған терезе)
|
Additional
|
Мәліметтерді пішімдеу немесе шаблонға сәйкес символдар енгізу үшін қолданылады.
|
Memo
|
Standard
|
Көп жолдық мәтіндерді енгізу мен редакторлеуді көрсетеді.
|
RichEdit
(rtf форматында редакторлеуге арналған көп жолды терезе )
|
Win32
|
Қаріп таңдауға, мәтін іздеуге және т.б. мүмкіндік беретін rtf форматындағы редакторлеу терезесі.
|
ListBox(тізім терезесі)
|
Standard
|
Қолданушыға пункт (Items) таңдауға мүмкіндік беретін Windows-тың қалыпты тізім терезесінің көрінісі.
|
CheckListBox (индикаторлары бар тізім)
|
Additional
|
ListBox тізімі мен CheckBox қасиеттерінің комбинациясы
|
ComboBox
(редакторленетін тізім)
|
Standard
|
ListBox және Edit қызметтерін біріктіреді. Қолданушы мәтін енгізеді немесе оны тізімнен (items) таңдайды
|
StringGrid(кесте)
|
Additional
|
Кесте түріндегі ақпаратты көрсету
|
Label, StaticText, Panel компоненттерінде бейнеленетін мәтіндер олардың Caption қасиеті арқылы анықталады. Оны жобалау кезінде немесе бағдарламалауда өзгертуге болады:
Label1.Caption:=’Жаңа мәтін’;
Егер сандық ақпаратты көрсету керек болғанда FloatToStr және IntToStr функцияларын қолдануға болады:
Label1.Caption:=’Қызметкерлер саны: ’+ IntToStr(I);
Барлық қарастырылған компоненттерді формаға орналастыру Top,Left, Height, Witch, Align қасиеттері арқылы анықталады. Бұл қасиеттер компонент координатын, оның өлшемін анықтайды.
Edit және MaskEdit компоненттеріне енгізілетін, шығарылатын мәтін олардың Text қасиетінде болады. Оны жобалау кезінде немесе бағдарламалауда өзгертуге болады.
Memo компонентінде барлық мәтін үшін пішім (қаріп, оның атрибуттары, теңестіру) бірдей және компоненттің Font қасиеті арқылы анықталады.
RichEdit компонент rtf форматындағы мәтінмен жұмыс жасайды. Қайта енгізілетін мәтін атрибутын SelAttributes қасиеті арқылы өзгертуге болады.
Бұл редакторлеу терезелерінің ортақ қасиеттері:
Alignмent – мәтінді теңестіру
WordWrap – ұзын жолдарды тасымалдау мүмкіндігі
ReadOnly – true – тек оқу үшін
MaxLength – енгізілетін мәтіннің максималды ұзындығы
Memo мен RichEdit редакторлеу терезелерінің негізгі қасиеті – TStrings типті және мәтін терезесі жолдар тізімі түрінде келетін Lines.
Lines – Объектілер инспекторы терезесінде жобалау кезіндегі мәтіннің бастапқы мәні.
Count – мәтіндегі жол саны.
ListBox, ComboBox компоненттері жолдар тізімін көрсетеді.
ListBox мәліметтерді көрсетеді және таңдауға мүмкіндік береді.
ComboBox мәліметтерді редакторлеуге мүмкіндік береді.
Аталған екі компоненттің негізгі қасиеті – Tstrings типті Items. Оны жобалау кезінде толтыруға болады. Ал жұмысты орындау кезінде Tstrings классына тиісті Clear, add, және т.б. әдістері арқылы орындауға болады.
StringGrid компоненті кесте түріндегі ақпаратты көрсету үшін қолданылады.
StringGrid компонентінің қасиеттері:
Қасиет
|
Мәліметтер типі
|
Сипаттамасы
|
ColCount
|
Бүтін сан
|
Кестедегі баған саны
|
RowCount
|
Бүтін сан
|
Кестедегі жол саны
|
DefaultColWidth
|
Бүтін сан
|
Кестедегі баған ені Ширина колонок в таблице
|
DefaultRowHeight
|
Бүтін сан
|
Кестедегі жол биіктігі
|
FixedCols
|
Бүтін сан
|
Кестенің сол жағындағы белгіленген баған саны
|
FixedRows
|
Бүтін сан
|
Кестенің жоғары жағындағы белгіленген баған саны
|
GridLineWidth
|
Бүтін сан
|
Кесте ұяшығын шектейтін сызықтың ені
|
Options
|
Салынған қасиетттер
|
Компоненттер параметрлерінің тобын анықтайды
|
Font
|
Салынған қасиетттер
|
Ұяшықта көрінетін мазмұн Қаріпі
|
Кесте өлшемін тағайындау:
StringGrid.ColCount := 10;
StringGrid.RowCount := 20;
Кесте ұяшығына мәліметтерді бағдарламалау кезінде енгізу:
StringGrid.Cells[1, 2] := 'Менің мәтінім';
мұнда 1 – баған номері, 2- жол номері
Аталған компоненттерді массивтерге арналған есептерді шешудің бағдарламаларын құруда жие қолданады.
Бір типті элементтерден құралып, бір ортақ атау берілген жиынды массив деп атаймыз. Массив элементтері нөмірленеді. Массивтің әрбір элементімен индексін көрсету арқылы жұмыс істеуге болады.
Массивтың сипаттамасы:
Var <Массив аты>: array [<Индекстың бастапқы мәні>..<Индекстың соңғы мәні>] of <Массив элементтерінің типі>;
Var a: array [1..10] of Real;
Жадыдағы 10 нақты саннан тұратын массивтың сақталуы.
Екі өлшемді немесе көп өлшемді массивтермен жұмыс істеу үшін, олар сипаттау бөлімінде көрсетілуі тиіс. Екі өлшемді массивтерді бағдарламалау арқылы кесте түрінде берілетін сандық есептеулер біршама ықшамдалады.
Екі өлшемді массивті Var бөлімінде сипаттаудың жалпы түрі:
Var Массив атауы : array [a1..an, b1..bn] of элемент типі;
Екі өлшемді массивті type бөлімінде сипаттаудың жалпы түрі:
type Массив типінің атауы = array [a1..an, b1..bn] of элемент типі;
Var Массив атауы: массив типінің атауы;
Мұндағы a1..an, b1..bn – екі өлшемді массивтің көлемі;
a1 және an – массив қатарының алғашқы және соңғы мәні;
b1 және bn – массив бағанының алғашқы және соңғы мәні
{квадрат матрица}
Екі өлшемді массивтің жекелеген элементі екі индекспен анықталады. Мысалы, 5-жолда 6-бағанда орналасқан ұяшық A[5][6] немесе A[5,6] деп белгіленеді.
Тапсырма 1. 2. А(3) және В(3) бір өлшемді массивтері берілген. Ci=Ai + Bi теңдеуімен анықталатын С(3) массивін және оның жұп сандарының қосындысы мен теріс сандарының нешеу екендігін анықтау керек.
Достарыңызбен бөлісу: |