Урок «Создание проекта в системе программирования Lazarus»

1
0
Материал опубликован 17 March 2018

ТЕМА: Создание проекта «Выбор компонентов персонального компьютера» в системе программирования


 

Цель урока: научить применять полученные ранее знания по теме «Основные составляющие персонального компьютера» при создании приложения в системе программирования Lazarus. Продемонстрировать связь таких предметов как «Аппаратно-программное обеспечение ЭВМ» и «Основы программирования».

 

ТИП УРОКА: комбинированный урок


 

ФОРМА ПРОВЕДЕНИЯ: самостоятельная работа, элементы лекции


 

ОБОРУДОВАНИЕ К УРОКУ: Персональный компьютер, мультимедийный проектор, интерактивная доска.


 

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ: ОС Windows 10, Lazarus

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ:

1. О.П.Новожилов. Основы компьютерной техники, «Радиософт» , 2013.

2. https://docs.altlinux.org/books/freepascal.pdf

Ход урока


 

1. Организационный этап: тема урока, постановка целей и мотивация учебно-познавательной деятельности.

2. Актуализация опорных знаний

Что такое системы программирования?

Какие системы программирования вы знаете?

Что такое интерператоры и компиляторы?

Перечислите основные этапы разработки проекта.

Перечислите основные окна системы программирования

Каким образом можно изменить значения свойств программного объекта?

3. Постановка задачи

Для выполнения лабораторной работы необходимо определить способы предоставления информации о компонентах персонального компьютера и смоделировать выбор компонентов персонального компьютера (CPU, MotherBoard, Video, RAM) в среде Lazarus.

Технология моделирования выбора комплектующих включает следующие шаги:

выбор группы комплектующих (например, MotherBoard ) и формирование списка позиций из указанной группы с ценами;

показ изображений выбранной позиции;

выбор из списка нужной позиции;

показ цены выбранной позиции в валюте (доллар, евро);

вычисление суммы всех выбранных комплектующих.

Примерный вид создаваемого приложения показан на рис.1.

 

Рис.1.- Примерный вид создаваемого приложения.

Определение способа хранения информации

Информацию будем хранить в двух массивах, в первом – названия позиций в группах, во втором – соответствующие им цены.

Массив наименований (строковый)

a[i,j]

 

Массив цен (числовой)

b[i,j]

CPU1

Video1

MotherBoard1

RAM1

 

Цена CPU1

Цена Video1

Цена MotherBoard1

Цена RAM1

CPU2

Video2

MotherBoard2

RAM2

 

CPU3

Video3

MotherBoard3

RAM3

 

CPU4

Video4

MotherBoard4

RAM4

 

Цена CPU4

Цена Video4

Цена MotherBoard4

Цена RAM4

Разработка интерфейса

Для данной задачи информацию будем располагать на двух формах: на первой форме – группы комплектующих и кнопка выбора, на второй – список наименований из выбранной группы, изображение выбранной позиции и стоимость выбранных компонентов.

При проектировании внешнего вида приложения необходимо создать форму 1 (Form1) и разместить на ней соответствующие компоненты (Button, RadioGroup, Image) и форму 2 (Form2) c компонентами ListBox, Label, Edit, Image.

Виды форм при проектировании приведены на рисунке 2.

Форма 1

Форма 2

Рис. 2. – Вид проектируемых форм.

4. Выполнение задания

Осуществить разработку интерфейса, написать и отладить нужный программный код.

Массивы заполняются данными в момент создания формы 1 (процедура Form1Create).

Фрагмент кода:

procedure TForm1.FormCreate(Sender: TObject);

begin

//заполнение массива позициями CPU

a[1,1] := 'AMD Ryzen 5 1600X ';

a[2,1] := 'Intel Core i7-8700K ';

a[3,1] := 'AMD Ryzen 5 1600 ';

a[4,1] := 'AMD Ryzen 7 1700 ';

// заполнение массива ценами позиций CPU

b[1,1] := 16500;

b[2,1] := 32000;

b[3,1] := 14000;

b[4,1] := 25000;

end;

Для кнопки Выбор создается процедура, позволяющая показать список выбранных позиций и их цены (номер столбца соответствующей категории запоминается в переменной j):

procedure TForm1.RadioGroup1Click(Sender: TObject);

begin

case RadioGroup1.ItemIndex of

0: j:=1; // номер столбца соответствующей группы

1: j:=2;

2: j:=3;

3: j:=4;

end;

end;

Заполнение поля ListBox (Форма 2) данными из массивов a и b:

procedure TForm2.FormActivate(Sender: TObject);

var i:integer;

begin

listbox1.Clear;

for i := 1 to 4 do

ListBox1.items.add(a[i,j] + ‘ ‘ + b[i,j]);

end;

По одинарному клику мыши на позиции выводится изображение компонента

Фрагмент кода:

procedure TForm2.ListBox1Click(Sender: TObject);

begin

case ListBox1.ItemIndex of

0 : begin

if j=1 then

Image1.Picture.LoadFromFile('1.png');

if j=2 then

Image1.Picture.LoadFromFile('vidio1.jpg');

if j=3 then

Image1.Picture.LoadFromFile('mat1.jpg');

if j=4 then

Image1.Picture.LoadFromFile('ozy1.jpg');

end;

Еnd;

Задание. Самостоятельно добавить нужный код.

По двойному клику мыши на позиции выводится цена выбранного компонента и накопление суммы выбранных товаров, а также перерасчет цены выбранной позиции в другие валюты.

Фрагмент кода:

procedure TForm2.ListBox1DblClick(Sender: TObject);

begin

i := ListBox1.ItemIndex;

s := s+b[i+1,j];

Form2.Edit1.Text:= inttostr(s);

g := s;

g := g/55.6717; //в доллары

Form2.Edit2.Text:= floattostrF(g,fffixed,6,2);

h := s;

h := h/68.6599; //в евро

Form2.Edit3.Text:= floattostrF(h,fffixed,6,2);

end;

Выбранный список позиций отображается на Форме 2.

При одинарном клике мыши

При двойном клике мыши

 

Задание. Предусмотреть занесение выбранных позиций с ценами в таблицу (компонент StringGrid), например, так:

 

Если необходимо расширить список наименований, то следует изменить границы массивов и при загрузке формы задать все необходимые значения. При работе с приложением можно выбирать наименования компонент сколько угодно раз.

5. Подведение итогов урока и рефлексия

в формате Microsoft Word (.doc / .docx)
Комментарии
Комментариев пока нет.