Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_10_zapisi.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
94.72 Кб
Скачать

3 Приклад складання програми із записами

Завдання. Скласти проект програми, яка створює масив даних типу запис (до 20 записів) з відомостями про абітурієнтів: прізвище, середній бал атестату, країна та область, з якої прибув абітурієнт. Вивести масив з усією введеною інформацією. Вивести відомості про абітурієнтів, які закінчили школу з медаллю.

Ф орму та результати роботи проекту програми наведено на рис 10.1.

На формі використовано компоненти :

- для значень “Країна” – компонент ComboBox1 (початкові значення: “Україна”, “Росія”, “Молдова”, “Грузія” введені через властивість Items; властивість для опрацювання у программі – Text);

- для значень “Медалі” – компонент RadioGroup1 (початкові значення: “золота”, “срібна”, “немає” введені через властивість Items; властивість для опрацювання в програмі – ItemIndex);

- для значень “Область”, “Прізвище” та “середній бал” – компоненти Edit1, Edit2, Edit3.

Текст модуля програми.

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls, ExtCtrls;

type

TForm1 = class(TForm)

ComboBox1: TComboBox;

Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel;

RadioGroup1: TRadioGroup;

Button1: TButton; Button2: TButton; Button3: TButton;

Button4: TButton; Button5: TButton;

Memo1: TMemo; Memo2: TMemo;

Edit1: TEdit; Edit2: TEdit; Edit3: TEdit;

procedure TForm1.FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

…………………………..

implementation

{$R *.DFM}

Type abitur = record

country: string[10];

oblast: string[15];

family: string[12];

sr_bal: real;

medal: char;

end;

{Опис глобальних параметрів – масиву записів та їхньої кількості }

var m_zap:array[1..20]of abitur; {масив записів}

k:integer; {поточна кількість введених записів}

// Підпрограма початкових значень проекту

procedure TForm1.FormCreate(Sender: TObject);

begin

k:=0;

end;

// Підпрограма кнопки ” Додати запис”

procedure TForm1.Button1Click(Sender: TObject);

begin

k:=k+1;

with m_zap[k] do

begin

country:=ComboBox1.text;

oblast:=Edit1.text;

family:=Edit2.text;

sr_bal:=StrToFloat(Edit3.Text);

Case RadioGroup1.ItemIndex of

0: medal:='з';

1: medal:='с';

2: medal:='н';

end;

end;

end;

// Підпрограма кнопки ” Очистити”

procedure TForm1.Button2Click(Sender: TObject);

begin

k:=0;

СomboBox1.Clear;

Edit1.Clear; Edit2.Clear; Edit3.Clear;

memo1.Clear;

end;

// Підпрограма кнопки ” Переглядання усіх записів”

procedure TForm1.Button3Click(Sender: TObject);

var sbal,dan:string; smed:string; i:integer;

begin

memo1.Clear;

Memo1.Lines.Add(‘| Прізвище | Країна | Область | Середній бал| Медаль|’);

for i:=1 to k do

with m_zap[i] do

begin

case medal of

'з': smed:='золота';

'с': smed:='срібна';

'н': smed:='немає';

end;

str(sr_bal:5:2,sbal);

dan:=family+' | '+country+' | '+oblast+ ' | '+ sbal+' | '+ smed;

memo1.Lines.Add(dan);

end;

end;

// Підпрограма кнопки ” Вибір записів за умовою”

procedure TForm1.Button4Click(Sender: TObject);

var sbal,dan:string; smed:string;i:integer;

begin memo2.Lines.Add('Медалисты');

for i:=1 to k do

with m_zap[i] do

if (medal='з') Or (medal='с') then

begin

case medal of

'з': smed:='золотая';

'с': smed:='серебрянная';

end;

dan:=family+' | '+country+' | '+ smed;

memo2.Lines.Add(dan);

end;

end;

// Підпрограма кнопки ” Вихід”

procedure TForm1.Button5Click(Sender: TObject);

begin

close

end;

end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]