На тему Разработка программного продукта

Институт ТиПХ курс I группа 514

КУРСОВАЯ РАБОТА

По дисциплине Программирование в решении задач энергоресурсосбережения

На тему Разработка программного продукта

(наименование темы)


Отметка о зачете

(дата)

Руководитель доцент к.х.н. А.Ю. Кожевников

(должность) (подпись) (и., о., фамилия)

(дата)

Архангельск

ЛИСТ ЗАМЕЧАНИЙ

___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

______________________________________________________________________________________________________________________________________________

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ……………………………………………………………………………..

СРЕДА ПРОГРАММИРОВАНИЯ ДЕЛФИ…………………………………………..

ОБЗОР ИСПОЛЬЗУЕМЫХ КОМПОНЕНТОВ………………………………………

d-ЭЛЕМЕНТЫ……………………………………………………..

ТЕСТ……………………………………………………………………………………..

БЛОК-СХЕМА…………………………………………………………………………..

ЛИСТИНГ ПРОГРАММЫ…………………………………………………………….

ЗАКЛЮЧЕНИЕ…………………………………………………………………………

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ……………………………………


ВВЕДЕНИЕ

Тестирование – это стандартизированный метод оценки знаний, умений, навыков учащихся, который помогает выявить и сформировать индивидуальный темп обучения, пробелы в текущей итоговой подготовке.[1]

Данный курсовой проект разработан в среде программирования Delphi и предназначен для проверки знаний по типам химических связей.

Для того чтобы начать работу пользователь вводит свои данные, после чего проходит тест из 10 вопросов в каждом из которых по 2- 4 варианта ответа. За каждый правильный ответ начисляется один балл. После того как пользователь даст ответ на все вопросы на экран выводится суммарный набранный балл.

Программа содержит в себе информацию о программисте и пояснение к тесту.

Цель данного курсового проекта заключается в том, чтобы разработать программный продукт и закрепить навыки программирования на языке Delphi, полученные на занятиях

СРЕДА ПРОГРАММИРОВАНИЯ DELPHI

Базовым языком для создания языка программирования Delphi служил язык Object Pascal, ориентированный на графику. Delphi имеет интегрированную оболочку, визуальную среду и обладает такими возможностями, как:

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

б) возможность работы с базами данных и разработка баз данных;

в) создание мультимедийных приложений;

г) создание систем помощи;

д) создание браузеров;

е) создание связей с Microsoft Word, Microsoft Exel.[2]

Разработка программы идет поэтапно:

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

б) Разработка алгоритма – определение последовательности действий, которые надо выполнить для получения результата.

в) Кодирование – запись программы на языке программирования.

г) Отладка – процесс поиска и устранения ошибок во время компеляции.

д) Тестирование – проверка программы с разными входными данными.[3]


ОБЗОР ИСПОЛЬЗУЕМЫХ КОМПОНЕНТОВ

Интерфейс программы содержит в себе главную форму, стандартные диалоговые окна OkBottonDlg и MessageDlg, а также другие элементы, такие как Label, Edit,, ComboBox, Image, Memo.

Всего я использовала 12 диалоговых окон OkBottonDlg: 10 для вывода вопросов теста, 1 для показа справки о программе и 1 для окна регистрации пользователя. Для создания кнопки «Об авторе» я использовала окно MessageDlg.

Компонент Button использовался в качестве кнопок главного меню программы и вопросов, всего 14. 10 кнопок вопросов сгруппированы в GroupBox. 2 компонента Edit использованы для ввода данных пользователя. Компоненты Label использованы для вывода вопросов теста, данных пользователя и результатов тестирования. Варианты ответов выведены с помощью компонента ComboBox. Компонент Memo я использовала для вывода справки, а компонент Image – для создания фонового рисунка на главной форме.


d-элементы

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

Для качественной сравнительной характеристики комплексообразующей способности элементов целесообразнее использовать способность элементов давать наибольшее количество комплексных соединений основных типов. Элементы, образующие лишь отдельные типы комплексных соединений, будем называть нетипичными комплексообразователями.

d -элементы, как правило, являются типичными комплексообразователями, причем максимальная способность к комплексообразованию принадлежит элементам VIIIБ-группы. Вообще говоря, для d -элементов известны почти все типы комплексных соединений.

Характерной особенностью d -элементов является их способность образовывать прочные комплексы не только с анионными лигандами, но и с нейтральными, например, с молекулами CO, NH3, H2O, NO, ненасыщенными углеводородами и т.д.

Во многих комплексных соединениях d -элементы находятся в низшей степени окисления (часто – нулевой). Пониженная степень окисления элемента-комплексообразователя стабилизируется наличием d (p)- p (p)-связи с участием заполненных электронами орбиталей комплексообразователя и вакантных орбиталей лигандов.

Группа →                    
↓ Период  
  21 Sc 22 Ti 23 V 24 Cr 25 Mn 26 Fe 27 Co 28 Ni 29 Cu 30 Zn                  
  39 Y 40 Zr 41 Nb 42 Mo 43 Tc 44 Ru 45 Rh 46 Pd 47 Ag 48 Cd                  
  71 Lu 72 Hf 73 Ta 74 W 75 Re 76 Os 77 Ir 78 Pt 79 Au 80 Hg                  
  103 Lr 104 Rf 105 Db 106 Sg 107 Bh 108 Hs 109 Mt 110 Ds 111 Rg 112 Cn                  
Химические элементы, входящие в d-блок

ТЕСТ

Тест разработан на основе лекций по общей и неорганической химии и химической энциклопедии из электронного источника. Он предназначен для проверки знаний по d-элементам и состоит из десяти вопросов. Пользователь должен выбрать лишь один правильный вариант из предложенных.

Тест не содержит сложных вопросов и не требует углубленного изучения темы, достаточно обладать базовыми знаниями по d-элементам.

Полужирным шрифтом выделены правильные варианты ответов:

1. Какой электродный потенциал у d-элементов:

1) положительный

Отрицательный

2. Какой металл относится к d-элементам?

Cr

2) Са

3) Mg

3. При избытке щелочи с хромом образуется?

1) Na3[Сг(ОН)6]

2) Сг(ОН)3

3) NaCl

4. какого цвета осадок сульфида меди (II)CuS:

Черный

2) красный

3) зеленый

5. NH4OH, взятый в избытке, образует с солями меди комплексный катион:

1) [Cu(NH3)4]SO4

2) [Cu(NH3)4]

6. какого цвета осадок хлорида серебра AgCl:

Белый

2) черный

3) фиолетовый

7. При добавлении какого вещества можно обнаружить Со2+

NH4)2S

2) CaCl

3) NaCl

8) Какого цвета осадок сульфида цинка ZnS:

Белый

2)голубой

9) Какому металлу соответствует электронная формула 3d64s2:

Fe

2) Ni

3) Cu

10) какая высшая степень окисления характерна для Pd?

1) +8

2) +5

3) +6


БЛОК-СХЕМА

Запуск
Ввод данных
Ошибка
Вопрос 1
Ответ 2
a = 1
a = 0
Вопрос 2
a = 0
Ответ 1
а +1
Нет
Да
Нет
Да


Да
Да
Вопрос 3
Ответ 1
a+1
a = 0
Вопрос 4
Вопрос 5
Ответ 2
а=0
а+ 1
Вопрос 6
Ответ1 1111111
а = 0
а+1 +1пывапвпвапвпавпва +11111111111111+++ =а+а цйй234каафа1
Ответ1
а = 0
а+ 1
Нет
Нет
Нет
Нет
Да
Да


0…10
а
Количество баллов
Конец

Кнопка «Выход»

нет
Выйти из программы?
Начало
да
Конец


ЛИСТИНГ ПРОГРАММЫ

unit Unit1;

interface

uses

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

Dialogs, StdCtrls, jpeg, ExtCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

Button3: TButton;

Button4: TButton;

Button5: TButton;

Button6: TButton;

Button7: TButton;

Button8: TButton;

Button9: TButton;

Button10: TButton;

Button11: TButton;

Button12: TButton;

Button13: TButton;

Label1: TLabel;

Label2: TLabel;

Button14: TButton;

Image1: TImage;

Label3: TLabel;

Label4: TLabel;

procedure Button3Click(Sender: TObject);

procedure Button14Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Button6Click(Sender: TObject);

procedure Button7Click(Sender: TObject);

procedure Button8Click(Sender: TObject);

procedure Button9Click(Sender: TObject);

procedure Button10Click(Sender: TObject);

procedure Button11Click(Sender: TObject);

procedure Button12Click(Sender: TObject);

procedure Button13Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Image1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

a:byte;

implementation

uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7, Unit8, Unit9, Unit10,

Unit11, Unit12, Unit13;

{$R *.dfm}

procedure TForm1.Button3Click(Sender: TObject);

begin

If OKRightDlg.ShowModal=mrOk then

begin

label3.Caption:='Пользователь выбрал '+OKRightDlg.ComboBox1.Text;

case OKRightDlg.ComboBox1.ItemIndex of

0,2,3:

label4.Caption:='Ответ не верный';

1: begin

label4.Caption:='Ответ верный';

a:=a+1;

end;

end;

button3.Enabled:=false;

end;

end;

procedure TForm1.Button14Click(Sender: TObject);

begin

close

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

AboutBox.Showmodal

end;

procedure TForm1.Button5Click(Sender: TObject);

begin

If OKBottomDlg.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg.ComboBox1.Text;

case OKBottomDlg.ComboBox1.Itemindex of

1,2,3:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button5.Enabled:=false;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

a:=0;

end;

procedure TForm1.Button6Click(Sender: TObject);

begin

If OKRightDlg1.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKRightDlg1.ComboBox1.Text;

case OKRightDlg1.ComboBox1.Itemindex of

1,2,3:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button6.Enabled:=false;

end;

procedure TForm1.Button7Click(Sender: TObject);

begin

If OKBottomDlg1.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg1.ComboBox1.Text;

case OKBottomDlg1.ComboBox1.Itemindex of

1,2,3:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button7.Enabled:=false;

end;

procedure TForm1.Button8Click(Sender: TObject);

begin

If OKBottomDlg2.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg2.ComboBox1.Text;

case OKBottomDlg2.ComboBox1.Itemindex of

0:

label4.Caption:='ответ не верный';

1: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button8.Enabled:=false;

end;

procedure TForm1.Button9Click(Sender: TObject);

begin

If OKBottomDlg3.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg3.ComboBox1.Text;

case OKBottomDlg3.ComboBox1.Itemindex of

1,2:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button9.Enabled:=false;

end;

procedure TForm1.Button10Click(Sender: TObject);

begin

If OKBottomDlg4.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg4.ComboBox1.Text;

case OKBottomDlg4.ComboBox1.Itemindex of

1,2:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button10.Enabled:=false;

end;

procedure TForm1.Button11Click(Sender: TObject);

begin

If OKBottomDlg5.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg5.ComboBox1.Text;

case OKBottomDlg5.ComboBox1.Itemindex of

1,2:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button11.Enabled:=false;

end;

procedure TForm1.Button12Click(Sender: TObject);

begin

If OKBottomDlg6.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg6.ComboBox1.Text;

case OKBottomDlg6.ComboBox1.Itemindex of

1,2:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button12.Enabled:=false;

end;

procedure TForm1.Button13Click(Sender: TObject);

begin

If OKBottomDlg7.ShowModal=mrOk then

label3.Caption:='Пользователь ответил'+OKBottomDlg7.ComboBox1.Text;

case OKBottomDlg7.ComboBox1.Itemindex of

1,2:

label4.Caption:='ответ не верный';

0: begin

label4.Caption:='ответ верный';

a:=a+1;

end;

end;

button13.Enabled:=false;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

If OKbottomDlg8.ShowModal=mrOK then begin

Label3.Caption:=OKbottomDlg8.Edit1.Text+ OKbottomDlg8.Edit2.Text;

If (OKbottomDlg8.Edit1.Text='') or (OKbottomDlg8.Edit2.Text='')then

Label3.Caption:='Введите свои данные!';

end;

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

Form1.Label3.Caption:=inttostr(a);

end;

procedure TForm1.Image1Click(Sender: TObject);

begin

end;

end.


ЗАКЛЮЧЕНИЕ

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

Мой способ заключается в том, что каждый вопрос выводится в своем диалоговом окне. Для вопросов объявлена накопительная переменная, которой в случае верного ответа присваивается один балл. Итог представлен получившимся значением.

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

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


СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Программирование на языке Delphi [Электронный ресурс]: Учебное пособие. / А. Н. Вальвачев, К. А. Сурков, Д. А. Сурков, Ю. М. Четырько:2005. – Режим доступа: http://www.rsdn.ru/?article/Delphi/Delphi_7_00.xml.

2. Программирование на Delphi [Электронный ресурс]: Уроки программирования / Ю.Ю. Климант. – На сайте представлена информация о языке программирования Delphi. Режим доступа: http://ipg.h1.ru/lessons/delphi/les03.html.

3.Общие требования и правила оформления: Методические указания. СТО 01.04 - 2005. Работы студентов [Текст]. – введ., 2006-01-11 – Архангельск: Изд-во АГТУ, 2006. – 104 с.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: