Разработка программного продукта "Обучающая программа по ОАП: Операции со стеком"

Характеристика программных средств: операционной системы, систем программирования. Описание программы для построения программ с использованием "Стека": ее компоненты, интерфейс, процедуры и функции, вызов и загрузка. Руководство пользователя к программе.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 26.01.2017
Размер файла 671,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

Введение

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

1.1 Описание предметной области

1.2 Входная информация

1.3 Постоянная информация

1.4 Выходная информация

1.5 Описание алгоритма

2. Вычислительная система

2.1 Основные характеристики выбранного ПК

2.2 Характеристика программных средств

2.2.1 Операционная система

2.2.2 Система программирования

3. Описание программы

3.1 Описание компонентов

3.2 Интерфейс программы

3.3 Описание процедур и функций

3.4 Вызов и загрузка программы

4. Руководство пользователя

Заключение

Список используемых источников

Приложение

Введение

Целью данного курсового проекта, является разработка программного продукта

«Обучающая программа по ОАП: Операции со стеком»

Стек является простейшей динамической структурой данных. Его можно рассматривать как частный случай однонаправленного списка, добавление элементов в который и выборка из которого выполняются только с одного конца, называемого вершиной стека. Данный программный продукт позволяет научиться построить программу с использованием стека, при котором при каждом входе в программу ее локальные переменные размещенные в организованной особым образом области памяти, называемым программным стеком. Разрабатываемое программное обеспечение имеет цель наглядно продемонстрировать применение стека для вычисления арифметических выражений. Данную программу можно использовать в колледжах и других учебных заведениях для изучения «Стека». Для написания данного программного продукта я использовал визуальную среду разработки Borland Delphi Enterprise 7, так как данный язык наиболее подходит для разработки программного продукта.

программный операционный стек интерфейс

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

1.1 Описание предметной области

Задание данной курсовой работы требует разработать программу, которая должна помочь научиться строить программы с использованием стека. Программа может быть использована в колледжа и других учебных заведениях для изучения программ с использования «Стека».

1.2 Входная информация

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

1.3 Постоянная информация

Постоянной информацией будет являться меню, которое будет содержать кнопки «Начать обучение» и операцию «Не хочу учиться».

1.4 Выходная информация

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

1.5 Описание алгоритма

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

2. Вычислительная система

2.1 Основные характеристики выбранного ПК

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

Для нормальной работы приложения необходимы следующие минимальные требования к аппаратным и программным средствам оснащенным клавиатурой, мышью, монитором и устройством для хранения данных. Программа работает на операционной системе Windows 7 (32bit). Перечисленные аппаратурные средства являются минимально необходимыми для работы программы. Для выполнения программы требуется не менее 100 Mb памяти на жёстком диске.

Минимальные требования:

-RAM - 60 MB;

-CPU - 1000 MHz;

-HDD - не менее 100 MB.

- видеоадаптер: поддерживающий более 65535 цветов

- монитор;

- клавиатура;

- мышь.

2.2 Характеристика программных средств

2.2.1 Операционная система

Операционная система является необходимым компонентом любого компьютера и представляет собой набор программ, предназначенных для управления компьютером, хранения информации и организации работы всех подключенных к нему устройств. Windows 7 -- пользовательская операционная система семейства Windows NT, следующая по времени выхода за Windows Vista и предшествующая Windows 8. В линейке Windows NT система имеет номер версии 6.1 (Windows 2000 -- 5.0, Windows XP -- 5.1, Windows Server 2003 -- 5.2, Windows Vista и Windows Server 2008 -- 6.0). Серверной операционной системой того же семейства выступает Windows Server 2008 R2, интегрируемой операционной системой этого семейства (облегченной версией, встраиваемой в устройства) -- Windows Embedded Standard 2011(Quebec), мобильной -- Windows Embedded Compact 2011 (Chelan, Windows CE 7.0).

Программа может функционировать практически на любой операционной системе (ОС) Windows, однако оптимальной ОС будет Windows 7(32 bit), поскольку она содержит обновленные и наиболее стабильные компоненты доступа к данным.

2.2.2 Система программирования

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

В основе такой общепризнанной популярности лежит тот факт, что Delphi, как никакая другая система программирования, удовлетворяет изложенным выше требованиям. Действительно, приложения с помощью Delphi разрабатываются быстро, причем взаимодействие разработчика с интерактивной средой Delphi не вызывает внутреннего отторжения, а наоборот, оставляет ощущение комфорта. Delphi-приложения эффективны, если разработчик соблюдает определенные правила (и часто - если не соблюдает). Эти приложения надежны и при эксплуатации обладают предсказуемым поведением. В основе Delphi-среды лежит язык программирования Паскаль. Delphi имеет возможность использования множества баз данных. Примерами могут быть локальные базы данных - Paradox, Dbase, сетевые серверные базы данных. Delphi разработан на основе высокоуровнего языка программирования. Delphi предназначен для программистов, которые занимаются созданием новых комплексных программных продуктов для сложных приложений.

3. Описание программы

3.1 Описание компонентов

В данном разделе приводиться описание компонентов, которые используется в программе.

В таблице 3.1.1 приведено описание компонентов Form1

Таблица 3.1.1 -Компоненты Form1

BitBtn1

Используется для перехода на Form2

BitBtn2

Используется для закрытия программы

BitBtn3

Используется для открытия help.chm

Image1

Используется для отображения изображения

Label1

Используется для отображения надписи «Добро пожаловать в обучающую программу работы со стеком»

В таблице 3.1.2 приведено описание компонентов Form2

Таблица 3.1.2 - Компоненты формы Form2

BitBtn1

Используется для перехода на Form3

Image1

Используется для отображения изображения

Label1

Используется для отображения надписи «Немного теории "Важно знать"»

Memo1

Используется для отображения текста

В таблице 3.1.3 приведено описание компонентов Form3

Таблица 3.1.3 - Компоненты формы Form3

Bitbtn1

Используется для перехода на Form2

Button1

Используется чтобы создать стек элементов

Button2

Используется для внесения в стек значений

Button3

Используется для удаления элемента из стека

Button4

Используется для удаления стека

Button5

Используется для выведения стека в строку

Button6

Используется для перехода на Form4

Edit1

Используется для внесения значений в стек

Label1

Используется для отображения надписи «Создать стек элементов»

Label2

Используется для отображения надписи «Первым делом необходимо»

Label3

Используется для отображения надписи «для работы с ним необходимо внести в нее элементы»

Label4

Используется для отображения надписи «Результат заполнения стека приведен ниже»

Label5

Используется для отображения надписи «Стек можно создавать бесконечно»

ListBox1

Используется для просмотра результатов значения стека

Memo1

Используется для отображения текста

Memo2

Используется для отображения текста

Memo3

Используется для вывода стека в строку

В таблице 3.1.4 приведено описание компонентов Form4

Таблица 3.1.4 - Компоненты формы Form4

Button1

Используется для выбора варианта ответа

Button2

Используется для завершения теста

Button3

Используется для повторного прохождения теста

Label1

Используется для отображения вопросов

RadioGroup1

Используется для отображения вариантов ответов на вопрос

3.2 Интерфейс программы

Рисунок 3.2.1-- Форма «Главное меню»

Рисунок 3.2.2 -- Форма «Знакомство со стеком»

Рисунок 3.2.3 -- Форма «Практика»

Рисунок 3.2.3 -- Форма «Тест знаний»

3.3 Описание процедур и функций

В данном разделе описываются процедуры и функции, используемые при написании программы.

В таблице 3.3.1 приведено описание процедур, которые входят в состав Unit1

Таблица 3.3.1 - Unit1

Процедуры или функции

Описание

procedure BitBtn1Click(Sender: TObject);

Процедура применяется для отображения Form2

procedure BitBtn2Click(Sender: TObject);

Процедура применяется для закрытия программы

procedure BitBtn3Click(Sender: TObject);

Процедура применяется для открытия документа

В таблице 3.3.2 приведено описание процедур, которые входят в состав Unit2

Таблица 3.3.2 - Unit2

Процедуры или функции

Описание

procedure BitBtn1Click(Sender: TObject);

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

В таблице 3.3.3 приведено описание процедур, которые входят в состав Unit3

Таблица 3.3.3 - Unit3

Процедуры или функции

Описание

procedure BitBtn1Click(Sender: TObject);

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

procedure Button1Click(Sender: TObject);

Процедура применяется для создания стека

procedure Button2Click(Sender: TObject);

Процедура применяется для внесения значений в стек

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

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

procedure Button3Click(Sender: TObject);

Процедура применяется для удаления элементов из стека

procedure Button4Click(Sender: TObject);

Процедура применяется для удаления стека

procedure Button5Click(Sender: TObject);

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

procedure Button6Click(Sender: TObject);

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

В таблице 3.3.4 приведено описание процедур, которые входят в состав Unit4

Таблица 3.3.4 - Unit4

Процедуры или функции

Описание

procedure Button1Click(Sender: TObject);

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

procedure FormCreate(Sender: TObject);

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

procedure Button2Click(Sender: TObject);

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

procedure FormClose(Sender: TObject; var Action: TCloseAction);

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

procedure Button3Click(Sender: TObject);

Процедура применяется для повторного прохождения теста

3.4 Вызов и загрузка программы

Для вызова программы необходимо запустить файл Обучение стеку на Pasсal.exe, после чего откроется окно главного меню.

4. Руководство пользователя

Обучение стеку Delphi.

Обучение проходит в 3 этапа.

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

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

Знакомство пользователя с интерфейсом приложения

При входе в программу вы увидите окно приветствия в котором будет поясняться что тут непосредственно будет изучаться и каким образом. Далее вы делаете выбор нужно это вам или нет, если нужно то жмете на кнопку начать обучение и по-подаете сразу к изучению основ и теории. Если нет то можно закрыть окно на крестик в верху приложения или нажать кнопку не хочу учится и приложение автоматически закроется. Форма приветсвия изображена ниже на рисунке 5.1.

Рисунок - 5.1

После того как пользователь ознакомился с теорией он может выйти из программы или же продолжить обучение перейти к практике. Форма изучения теории представлена ниже на рисунке 5.2.

Рисунок - 5.2

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

Рисунок - 5.3

После того как вы изучили теорию и практику вы должны проверить свои знания и умения, для этого сформирована специальная система тестирования, в приложении изображена на рисунке 5.4 и 5.5.

Рисунок - 5.4 Прохождение теста

Рисунок - 5.5 Результат теста.

Если вас не устроил результат теста то не растраивайтесть прочтите еще раз теорию по-пробуйте написать несколько не сложных задач по решению стеков и пройдите еще раз тест.

Заключение

Программа является законченным программным продуктом, несмотря на то, что возможна ее доработка. Программа имеет удобный пользовательский интерфейс, она написана для использования в операционной системе Windows XP/7/8/8.1. Пользование программой не составит труда для всех пользователей ПК. Для дальнейшей доработки этой программы необходимо сначала в течение некоторого времени применять её для оценки эффективности, а потом добавлять или исправлять все недочеты, которые пропустил либо посчитал не нужным реализовывать разработчик.

Список используемых источников

1. Фаронов В.В. «Delphi Программирование на языке высокого уровня»

2. Методические рекомендации по курсовому проекту.

3. http://www.delphiplus.org/fundamentalnie-algoritmy-i-struktury-dannih/steki.html

4. http://www.delphiplus.org/fundamentalnie-algoritmy-i-struktury-dannih/steki-na-osnove-odnosvyaznih-spiskov.html

5. http://www.delphiplus.org/fundamentalnie-algoritmy-i-struktury-dannih/steki-na-osnove-massivov.html

6. http://www.delphiplus.org/fundamentalnie-algoritmy-i-struktury-dannih/primer-ispolzovaniya-steka.html

7. ГОСТ 2.104-2006.

8. ГОСТ 2.304-81.

9. ГОСТ 2.316-2008.

Листинг программы

unit Unit1;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons,

Vcl.Imaging.pngimage, Vcl.ExtCtrls,ShellApi;

type

TForm1 = class(TForm)

Image1: TImage;

Label1: TLabel;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

uses Unit2;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

Form2.Show;

end;

procedure TForm1.BitBtn2Click(Sender: TObject);

begin

Application.Terminate;

end;

procedure TForm1.BitBtn3Click(Sender: TObject);

begin

ShellExecute(Application.Handle,'Open','help.chm',0,0,SW_SHOW);

end;

end.

unit Unit2;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Imaging.pngimage,

Vcl.ExtCtrls, Vcl.Buttons;

type

TForm2 = class(TForm)

Label1: TLabel;

Memo1: TMemo;

Image1: TImage;

BitBtn1: TBitBtn;

procedure BitBtn1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.dfm}

uses Unit1, Unit3;

procedure TForm2.BitBtn1Click(Sender: TObject);

begin

Form3.Show;

Form2.close;

end;

end.

unit Unit3;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons;

type

TForm3 = class(TForm)

BitBtn1: TBitBtn;

Label1: TLabel;

Label2: TLabel;

Button1: TButton;

Label3: TLabel;

Edit1: TEdit;

Button2: TButton;

ListBox1: TListBox;

Label4: TLabel;

Label5: TLabel;

Memo1: TMemo;

Memo2: TMemo;

Button3: TButton;

Button4: TButton;

Memo3: TMemo;

Button5: TButton;

Button6: TButton;

procedure BitBtn1Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure Button6Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

type

//Тип основных данных.

TData = String;

//Указатель на элемент списка (в данном случае - стека).

TPElem = ^TElem;

//Элемент списка.

TElem = record

Data : TData;

PNext : TPElem; //Указатель на следующий элемент списка.

end;

var

Form3: TForm3;

PElem,PSt1 : TPElem;

implementation

{$R *.dfm}

uses Unit2, Unit4;

procedure StackInit(var aPStack : TPElem);

begin

aPStack := nil;

end;

procedure StackPush(var aPStack, aPElem : TPElem);

begin

if aPElem = nil then Exit;

aPElem^.PNext := aPStack;

aPStack := aPElem

end;

function StackPop(var aPStack, aPElem : TPElem) : Boolean;

begin

Result := False;

if aPStack = nil then Exit;

aPElem := aPStack;

aPStack := aPElem^.PNext;

Result := True;

end;

function StackToStr(var aPStack : TPElem) : String;

var

PSt, PElem : TPElem;

i : Integer;

begin

if aPStack = nil then begin

Result := 'Стек пуст.';

Exit;

end;

//Начальная инициализация вспомогательного стека.

StackInit(PSt);

//Переливаем элементы стека aPStack в стек PSt и выполняем распечатку.

Result := '';

i := 0;

while StackPop(aPStack, PElem) do begin

StackPush(PSt, PElem);

Inc(i);

if i > 1 then Result := Result;

Result := Result + PElem^.Data + ' . ';

end;

//Возвращаем элементы обратно - из PSt в aPStack.

while StackPop(PSt, PElem) do StackPush(aPStack, PElem);

end;

//Удаление стека из памяти (очистка стека).

procedure StackFree(var aPStack : TPElem);

var

PElem : TPElem;

begin

while StackPop(aPStack, PElem) do Dispose(PElem);

end;

procedure TForm3.BitBtn1Click(Sender: TObject);

begin

Form2.Show;

Form3.Close;

end;

procedure TForm3.Button1Click(Sender: TObject);

begin

Form3.Button2.Visible:=true;

Form3.Label3.Visible:=true;

Form3.Edit1.Visible:=true;

Form3.Button1.Enabled:=false;

Form3.Label5.Visible:=true;

Form3.Memo1.Visible:=true;

end;

procedure TForm3.Button2Click(Sender: TObject);

begin

if(Form3.Edit1.Text<>'') then begin

StackInit(PElem);

New(PElem);

PElem^.Data := Form3.Edit1.Text;

StackPush(PSt1, PElem);

Form3.ListBox1.Items.Insert(0, PSt1.Data);

Form3.Edit1.Clear;

Form3.ListBox1.Visible:=true;

Form3.Label4.Visible:=true;

Form3.Button3.Visible:=true;

Form3.Button4.Visible:=true;

Form3.Memo2.Visible:=true;

Form3.Button5.Visible:=true;

Form3.Button6.Visible:=true;

end

else

ShowMessage('Вы не ввели значение !!!');

end;

procedure TForm3.Button3Click(Sender: TObject);

var

n:TPElem;

begin

if PSt1<>nil then begin

n :=PSt1;

PSt1:=PSt1^.PNext;

dispose(n);

Form3.ListBox1.Items.Delete(0);

end

else

ShowMessage('Стек пуст');

end;

procedure TForm3.Button4Click(Sender: TObject);

begin

if PSt1<>nil then begin

StackFree(PSt1);

Form3.ListBox1.Clear;

end

else

ShowMessage('Стек пуст');

end;

procedure TForm3.Button5Click(Sender: TObject);

begin

Form3.Memo3.Clear;

Form3.Memo3.Lines.Add(StackToStr(PSt1));

Form3.Memo3.Visible:=true;

end;

procedure TForm3.Button6Click(Sender: TObject);

begin

Form4.show;

Form2.Close;

Form3.Close;

end;

procedure TForm3.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if not (Key in ['0'..'9', #8]) then

Key := #0;

end;

end.

unit Unit4;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;

type

TForm4 = class(TForm)

RadioGroup1: TRadioGroup;

Button1: TButton;

Button2: TButton;

Label1: TLabel;

Button3: TButton;

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

nomer_test:integer;

cout:integer;

ocenka:integer;

implementation

{$R *.dfm}

uses Unit3;

procedure TForm4.Button1Click(Sender: TObject);

begin

case nomer_test of

1 : cout:=2;

2 : cout:=0;

3 : cout:=0;

4 : cout:=1;

5 : cout:=0;

6 : cout:=2;

7 : cout:=2;

8 : cout:=1;

9 : cout:=0;

10 : cout:=1;

end;

if (Form4.RadioGroup1.ItemIndex>=0) then

begin

if(Form4.RadioGroup1.ItemIndex=cout) then

inc(ocenka);

inc(nomer_test);

if(nomer_test>=10) then

begin

Form4.label1.caption:='Ваша оценка = '+IntToStr(ocenka)+' из 10, Количество вопросов пройдено = '+IntToStr(nomer_test);

Form4.Label1.Visible:=true;

Form4.RadioGroup1.Visible:=false;

Form4.Button1.Visible:=false;

Form4.Button2.Visible:=false;

Form4.Button3.Visible:=true;

ocenka:=0;

nomer_test:=1;

Form4.RadioGroup1.Caption:='С какого места можно удалить элемент стека ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('В начала стека');

Form4.RadioGroup1.Items.Add('С середины стека');

Form4.RadioGroup1.Items.Add('С вершины стека');

end;

end

else

ShowMessage('Вы не выбрали ответ');

case nomer_test of

2 : begin

Form4.RadioGroup1.Caption:='Какой командой очистить память элемента стека ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('dispose(переменная)');

Form4.RadioGroup1.Items.Add('free(переменная)');

Form4.RadioGroup1.Items.Add('clear(переменная)');

end;

3 : begin

Form4.RadioGroup1.Caption:='Что не может являться стеком ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('Список кольцо');

Form4.RadioGroup1.Items.Add('Линейный список с указателем');

Form4.RadioGroup1.Items.Add('Одномерный массив с указателем');

end;

4 : begin

Form4.RadioGroup1.Caption:='Какая команда выделяет память под элемент стека ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('now(переменная)');

Form4.RadioGroup1.Items.Add('new(переменная)');

Form4.RadioGroup1.Items.Add('memory(переменная)');

end;

5 : begin

Form4.RadioGroup1.Caption:='Верный указатель на элемент списка ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('TPElem = ^ TElem');

Form4.RadioGroup1.Items.Add('TPElem = * TElem');

Form4.RadioGroup1.Items.Add('TPElem -> TElem');

end;

6 : begin

Form4.RadioGroup1.Caption:='Символьным стеком будет являться ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('TData = Booble; ');

Form4.RadioGroup1.Items.Add('TData = Integer; ');

Form4.RadioGroup1.Items.Add('TData = String; ');

end;

7 : begin

Form4.RadioGroup1.Caption:='Как перейти к следующему элементу списка';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('aPElem *.PNext := aPStack;');

Form4.RadioGroup1.Items.Add('aPElem -> PNext := aPStack;');

Form4.RadioGroup1.Items.Add('aPElem ^.PNext := aPStack;');

end;

8 : begin

Form4.RadioGroup1.Caption:='Какое значение означает что стек пуст ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('Null');

Form4.RadioGroup1.Items.Add('Nil');

Form4.RadioGroup1.Items.Add('Not');

end;

9 : begin

Form4.RadioGroup1.Caption:='Какое действие нельзя производить со стеком ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('Удалять елементы не с вершины стека');

Form4.RadioGroup1.Items.Add('Вставлять елементы на вершину стека');

Form4.RadioGroup1.Items.Add('Удалять стек');

end;

10 : begin

Form4.RadioGroup1.Caption:='Какая расшифровываеться обозначение LIFO';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('Первый зашел первый вышел');

Form4.RadioGroup1.Items.Add('Последний зашел последний вышел');

Form4.RadioGroup1.Items.Add('Последний зашел первый вышел');

end;

end;

end;

procedure TForm4.Button2Click(Sender: TObject);

begin

Form4.label1.caption:='Ваша оценка = '+IntToStr(ocenka)+'из 10, Количество вопросов пройдено = '+IntToStr(nomer_test);

Form4.Label1.Visible:=true;

Form4.RadioGroup1.Visible:=false;

Form4.Button1.Visible:=false;

Form4.Button2.Visible:=false;

Form4.Button3.Visible:=true;

ocenka:=0;

nomer_test:=1;

Form4.RadioGroup1.Caption:='С какого места можно удалить элемент стека ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('В начала стека');

Form4.RadioGroup1.Items.Add('С середины стека');

Form4.RadioGroup1.Items.Add('С вершины стека');

end;

procedure TForm4.Button3Click(Sender: TObject);

begin

ocenka:=0;

nomer_test:=1;

Form4.RadioGroup1.Caption:='С какого места можно удалить элемент стека ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('В начала стека');

Form4.RadioGroup1.Items.Add('С середины стека');

Form4.RadioGroup1.Items.Add('С вершины стека');

Form4.Label1.Visible:=false;

Form4.RadioGroup1.Visible:=true;

Form4.Button1.Visible:=true;

Form4.Button2.Visible:=true;

Form4.Button3.Visible:=false;

end;

procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);

begin

ocenka:=0;

nomer_test:=1;

Form4.RadioGroup1.Caption:='С какого места можно удалить элемент стека ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('В начала стека');

Form4.RadioGroup1.Items.Add('С середины стека');

Form4.RadioGroup1.Items.Add('С вершины стека');

Form4.Label1.Visible:=false;

Form4.RadioGroup1.Visible:=true;

Form4.Button1.Visible:=true;

Form4.Button2.Visible:=true;

Form4.Button3.Visible:=false;

end;

procedure TForm4.FormCreate(Sender: TObject);

begin

nomer_test:=1;

ocenka:=0;

Form4.RadioGroup1.Caption:='С какого места можно удалить элемент стека ?';

Form4.RadioGroup1.Items.Clear;

Form4.RadioGroup1.Items.Add('В начала стека');

Form4.RadioGroup1.Items.Add('С середины стека');

Form4.RadioGroup1.Items.Add('С вершины стека');

Form4.Label1.Visible:=false;

Form4.RadioGroup1.Visible:=true;

Form4.Button1.Visible:=true;

Form4.Button2.Visible:=true;

Form4.Button3.Visible:=false;

end;

end.

Размещено на Allbest.ru

...

Подобные документы

  • Описание предметной области. Характеристика программных средств. Описание компонентов, интерфейс программы. Описание процедур и функций. Вызов и загрузка программы. Испытание методом белого и черного ящика на ошибки кода программного приложения.

    курсовая работа [2,2 M], добавлен 26.04.2015

  • Требования к программе, составу и параметрам технических средств. Основные элементы языка программирования. Инструкция на выполнение программы учета клиентов: вызов и загрузка, входные и выходные данные. Расчет себестоимости программного продукта.

    дипломная работа [3,9 M], добавлен 29.06.2012

  • Анализ и описание алгоритма. Основные характеристики выбранного компьютера, программных сред (операционная система и среда программирования). Описание компонентов и интерфейса программы, а также модулей, процедур и функций. Вызов и загрузка программы.

    курсовая работа [1,3 M], добавлен 26.04.2015

  • Особенности алгоритмов, критерии качества. Создание и применение программного продукта на языке Delphi. Тип операционной системы. Внутренняя структура программного продукта. Руководство пользователя и программиста, расчет себестоимости и цены программы.

    дипломная работа [1,5 M], добавлен 12.06.2009

  • Функциональное назначение и область применения программы "Локальный сетевой чат"; логическая структура, технические и программные средства. Требования к программе; характеристика, вызов и загрузка, входные и выходные данные, настройка, интерфейс.

    дипломная работа [1,3 M], добавлен 18.10.2013

  • Вычислительная система: программные и технические средства. Алгоритм задачи: вызов и загрузка, интерфейс пользователя, система помощи, логическая и физическая структуры. Описание программы и ее элементов, сферы ее применения, тестирование и отладка.

    курсовая работа [5,4 M], добавлен 24.07.2012

  • Разработка программного обеспечения для работы с информацией и ее обработкой на языке программирования Delphi. Описание алгоритмов процедуры работы со стеком - добавление, удаление элементов, редактирование записи. Инструкция по использованию программы.

    курсовая работа [2,9 M], добавлен 06.02.2013

  • Изучение возможностей среды создания анимированного приложения при помощи Macromedia Flash 8. Разработка автоматизированной системы обучения - программного продукта "Обучающая программа" для быстрого усвоения учащимися принципа сборки системного блока.

    дипломная работа [58,5 M], добавлен 21.11.2010

  • Технико-математическое описание задачи. Требования к программе учета книг и читателей библиотеки. Описание языка программирования. Алгоритмы обработки информации. Текст программы. Инструкция на выполнение: вызов и загрузка, входные и выходные данные.

    дипломная работа [1,2 M], добавлен 29.06.2012

  • Разработка программы для нахождения минимального и максимального элемента массива, вычисления среднего арифметического строк и столбцов транспортирования матриц. Характеристика основных программных средств. Описание программы, руководство пользователя.

    курсовая работа [2,4 M], добавлен 26.04.2015

  • Обзор существующих решений и обоснование выбора языка программирования. Разработка структурной схемы, интерфейса программного продукта. Технические требования к оборудованию, тест программного продукта, руководство системного программиста и оператора.

    дипломная работа [2,0 M], добавлен 10.07.2012

  • Разработка полноценной правильно функционирующей игровой программы "Парные картинки", изучение процедур и функций. Использование масштабируемых средств для построения баз данных. Компоненты Delphi в программе. Описание пользовательского интерфейса.

    курсовая работа [1,3 M], добавлен 13.07.2012

  • Функции планировщика процессов: добровольный вызов, переключение между процессами, анализ нажатия клавиш Ctrl-D. Составление алгоритма работы программы, разработка процедуры планировщик и процедуры анализа клавиш. Организация интерфейса пользователя.

    курсовая работа [480,2 K], добавлен 20.01.2015

  • Создание класса прямоугольников со сторонами, параллельными осям координат. Основные требования к программе. Описание классов и диаграмма их взаимодействия. Интерфейс пользователя и руководство по эксплуатации программы. Блок-схемы разработанных методов.

    курсовая работа [622,8 K], добавлен 18.03.2011

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

    дипломная работа [645,3 K], добавлен 21.11.2010

  • Требования к пользовательскому интерфейсу программного продукта. Выбор инструментальных средств разработки программы. Описание функциональной схемы, модульной структуры, структурной схемы. Технология разработки справочной системы программного продукта.

    дипломная работа [2,7 M], добавлен 12.05.2016

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

    курсовая работа [462,8 K], добавлен 05.04.2014

  • Требования к интерфейсу программного продукта, характеристика операционной системы Windows XP и языка программирования разветвляющихся и циклических процессов Pascal. Структура условного оператора. Описание алгоритма работы с помощью блок-схемы, листинг.

    курсовая работа [268,0 K], добавлен 25.12.2010

  • Разработка программного продукта с помощью языка программирования Visual Basic. Описание интерфейса пользователя и возможностей программы. Исходный код основных модулей. Программа, демонстрирующая основные возможности диаграмм и среды Visual Basic.

    контрольная работа [989,9 K], добавлен 29.03.2011

  • Возможности среды программирования delphi при разработке приложения с визуальным интерфейсом. Отладка программных модулей с использованием специализированных программных средств. Тестирование программного обеспечения. Оптимизация программного кода.

    курсовая работа [974,0 K], добавлен 21.12.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.