Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тимур_Delphi_Lab.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
340 Кб
Скачать
☆

1. Программа компиляциясы, жинақталуы және орындалуы

20 минут.

2. Өзіндік жұмыс. 60 минут.

1. Программа орындалуын басқаруға Run менюінің мына командалары қолданылады:

Команда

Сипаттамасы

Run (F9)

Steo Over (F8)

Программа жол бойынша орындалады. Ішкі программа орындалуын бір жол қылып қабылдайды.

Trance Into (F7)

Программа жол бойынша орындалады. Сонымен қатар ішкі программаның әр жолы орындалады.

Run to Cursor (F4)

Программа Code Editor терезесіндегі 4.2 курсор тұрған жолға дейін орындалады.

Program Pause

Программаның орындалуы тоқтатылады.

Program Reset

(Ctre + F2)

Программа орындалуы аяқталады.

Add BreaKpoint

Программа орындалуында үзіліс нүктелерін көрсетуге болады.

Программа жұмысын тоқтатып (үзіліс) және басқаруды Delphi ортасына беретін бақылаушы тоқтату нүктесін программада оператор анықтайды. Үзіліс нүктесі View \ Debug Windows \ BreaKpoints опциялары арқылы беріледі. Негізінде үзіліс нүктесін орнататын жолдың сол жақ бұрышына тышқанның сол кнопкасымен сырт еткізген дұрыс.

Айнымалының немесе өрнектің View \ Debug Windows \ Watches опциялары арқылы шақырылатын арнайы терезе арқылы бақылауға болады.

Ағымдағы айнымалы мәнін < Ctrl> + <F7> клавиштері арқылы шақырылатын Evaluate \ Modity терезесінің көмегімен өзгертуге болады.

Expression жолында айнымалына енгізу керек, Modity кнопкасын басып одан кейін NewValue жолында жаңа мәнді енгізу керек.

  1. Дайындық жұмысы.

    1. Өз каталогыңызда Lab 4 каталогын құрыңыз.

  2. Алдымен өткендегі мысалды күрделендіріп көрейік. Қосымша – мысалды жүктеңіз. File \ Open командаларын орындаңыз. C:\ Delphi\ Far \ Lab 4. Қосымшада әр студенттің орта балы, қыздар мен ұлдардың орта балы, жалпы орта бал есептеледі. Бастапқы информатция: фамилия, жынысы, әр студенттің бағасы. Фамилия біржолды редактор терезесінде енгізіледі. Жынысы TRadio Broup көмегімен енгізіледі. Бағалар таблицаға енгізіледі. Есептеу белгісі Tradio Broup компонеті көмегімен беріледі.

    1. Қосымша тереземен танысыңыз. Қосымшада қолданылатын компоненттер таблицада келтірілген. Таблицада өзгертілген қасиеттер мәні көрсетілген.

Компонент

Қасиеттері

Panel1

Caption-тазалау

Align- alButtom

Edit1, Edit2

Text- тазалау

Label 1

Caption- фамилия

Radio Group1

Caption- жынысы

Item Index- 0

Items- еркек, әйел.

Radio Gruop2

Items – ұлдар орта балы, қыздар орта балы жалпы орта бал.

Caption- тазарту.

Bit Btn 1

Caption- жазу (записть)

Glyph- Imayes\ Buttons ішкі каталогының суреті.

Bit Btn 2

Kind- bk Close

Striny Grid1

Align- alClient

ColCount-6

Row Count- 30

Det ault Col Width- 80

Options\ go Editing- True

From 1

Caption- Lab 4

    1. Программамен танысыңыз.

Cont nn = 20; mm= 5;

// оқушылар саны max = 20.

// емтихан саны max = 5.

pp: array [0..1] of string [1] = (‘m’, ‘g’);

// жыныста анықтайтын массив.

Var

Form 1: Tform1; n: integer;

f: array [1..nn] of String [30];

p:array [1..nn] of String [1];

a: array [1..nn, 1..mm] of real;

ss: array [1..nn] of real;

// n- ағымдағы оқушы номері. Оқушылар саны.

//f- фамилиялар массиві

//p – жынысты анықтайтын массив.

// a- бағалар массиві

// s –оқушылардың орта балын анықтайтын массив.

implementation

{$ R *. DFM}

Procedure Tform1. BitBtm1. Click (Sender: Tobject);

// "Записать" кнопкасының оқиғасы.

// Фамилиясы және жынысы енгізіледі.

// Фамилия таблицасының белгіленген бағасына көшіріледі.

Bigen

n:= n+1;

f [n]: = Edit 1. Text;

p [n]: = pp [Radio Group1. Item Index];

String Grid 1. Cells [0, n]: = f [n];

Edit1. SetFows, Edit1. Clear;

End;

Procedure Tform1. Form Activate (Sender : TObject);

// Таблицасының белгіленген жолының мәнін енгізетін оқиға.

// Оқушының алғашқы номер мәнін жою.

Begin

n: = ;

Edit1. Set Focus.

With String Grid 1 Do

Begin

Cells [1.0]: = ‘Физика’; Cells [2,0]: = ‘математика’;

Cells [3,0]: = ‘история’; Cells [4,0]: = ‘Ин. яз.’;

Cells [5,0]: = ‘Ср. балл’;

End;

End;

Stlring Grid1. Set Edit Text оқиғасы алдыңғы қосымшада келтірілуі. Осы оқиға өңдеумен текстін тағы қарастырайық.

Proudure Tform 1. String Grid1 Set Edit Text (Sender: Tobject; A Col, A Row: Integer; Const Value: S fring);

Var b: real; j: byte;

Begin

With String Grid 1 Do

Begin

I f Value = ‘’ then Exit;

Try b: = Str To Float ( Value)

Lx Cept Show Message (‘Символ дұрыс емес’) ; b:= 0;

End;

I f (b< 1) or (b> 5) then begin Cells [a Col, a row]:= ‘’;

Exit; end;

Cells [a Col, a row]: =b;

SS [arow ] := 0; for j: = 1 to 4 do

Ss[ a row]:= ss[ a row] + a [a row, j];

Ss[a row]: = ss[a row] /4;

Cells [5, a row]:= format float (‘##. ## ‘, ss [a row];

End;

End;

Орта балды есептеу:

Procedure Tform1. Radio Group2. Click (Sender: T object);

//Оқиға есептеу белгісін ауыстырғанда пайда болады.

Var S: real; k, i : byte;

Begin

S: = ; K:= ;

With Radio Group 2 Do

Begin

Case I tem Index Of

0: begin //Ұлдар орта балын есептеу.

For i:= 1 to n do

If p [i] = ‘ m’ then begin s: = s+ ss [i]; k: = k+1;

If k= 0 then s:= else s: =s/k;

End;

1: begin //қыздар орта балын есептеу.

For i:1 to n do

If p [i]= ‘g ‘ then begin s:= s+ ss [i]; k: = k+ 1;

End;

If k= then s: = else S: =s / k;

End;

2: begin // жалпы орта балды есептеу

for i: = 1 to n Do

S: =S+ ss[i];

If n=0 then S:= else s:= s/n;

End;

End;

// Редактор терезесіне нәтижені шығару.

Edit1. Text: = Format float (‘## . ##’, s);

End; end;