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

Требуется разработать программу «Таймер». Заданы ряд требований по выполнению работы. Программа будет написана на языке Delphi 7. Delphi обеспечивает быстроту работы, легкость компиляции, совместимость, интеграционную способность и т.д.

Анализ требований технического задания

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

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

Все функции установки таймера достаточно просты и удобны. Таймер имеет красивую иконку и спокойный фон.

Для наглядности работы алгоритма программы построим блок-схему.

Разработка блок-схем алгоритмов

Способы описания алгоритмов. Алгоритмы и структуры данных.

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

Блок-схема алгоритма работы программы представлена на рисунке 2.1.

Рисунок 2.1 – Блок-схема алгоритма работы таймера

Разработка и описание программы

Рассмотрим более детально реализованные в программе функции. Главная функция программы — счет оставшегося времени, эта возможность реализована в цифровой форме. Цифровая форма более удобна, так как отображается точное время в формате мм – сс.

Для получения остатка времени используется системная функция Timer.

Возможность установить время реализована с помощью стандартных компонентов Edit и UpDown.

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

Основные процедуры, используемые для реализации часов:

procedure ShowTime — выводит сколько времени осталось.

procedure TForm1.FormCreate(Sender: TObject) — процедура создания формы.

procedure TForm1.Timer1Timer(Sender: TObject) — процедура счета оставшегося времени.

procedure TForm1.Button1Click(Sender: TObject) — процедура включения, выключения таймера.

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

Назначение программы

Назначение программы – отображение сообщения и воспроизведение звукового сигнала по истечению заданного времени.

Условие работы с программой

Для работы программы необходимы:

Самый подробный урок про Блок-схемы, Понимание, Чтение и Создание блок-схем

Читайте также:
Как скопировать папку в программу

— процессор с частотой 100 МГц(при использовании совместно с Windows 98) и не менее 400МГц (для использования совместно с Windows 2000/ME/2003 Server/XP/Vista/7 или альтернативной системой при использовании программ эмулирования работы Windows)

— операционная система Windows 98/2000/ME/2003Server/XP/Vista/7 или альтернативная система с использованием программ эмулирования работы Windows

— манипулятор мышь и клавиатура

— объем дискового пространства 5 Мб

— оперативная память 64 Мб и более.

Описание функционирования программы

Чтобы начать работу с программой, необходимо запустить файл Timer.exe.

Запуск программы сопровождается появлением диалогового главного окна:

Указываем количество минут и секунд в интервале с помощью компонентов UpDown, либо вводом значений в поля:

После ввода интервала нажимаем кнопку «Пуск»:

И сразу открывается окно с количеством оставшегося времени и кнопкой «Стоп», для досрочной остановки таймера:

При нажатии на кнопку «Стоп» таймер возвращается в исходную позицию с формой для повторного ввода интервала.

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

Исходный код программы

unit Unit 1;

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

Dialogs, ExtCtrls, StdCtrls, MPlayer, ComCtrls;

TForm1 = class(TForm)

Button1: TButton;

Edit1: TEdit;

Edit2: TEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Timer1: TTimer;

MediaPlayer1: TMediaPlayer;

UpDown1: TUpDown;

UpDown2: TUpDown;

procedure FormCreate(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure Button1Click(Sender: TObject);

Form1: TForm1;

implementation

SOUND = ‘tada.wav’;

MediaPlayer : TMediaPlayer;

min: integer;

sec: integer;

procedure ShowTime;

buf: string[20];

buf:=’0’+IntToStr(min) + ‘:’

buf:=IntToStr(min) + ‘:’;

buf:=buf + ‘0’ + IntToStr(sec)

buf:=buf + IntToStr(sec);

Form1.Label3.Caption:=buf;

procedure TForm1.FormCreate(Sender: TObject);

pWinDir: PChar;

sWinDir: String[80];

Form1.Label3.Visible:=false;

MediaPlayer:= TMediaPlayer.Create(self);

MediaPlayer.ParentWindow:=Form1.Handle;

MediaPlayer.Visible:=False;

GetMem(pWinDir, 80);

GetWindowsDirectory(pWinDir, 80);

sWinDir:=pWinDir;

MediaPlayer.FileName:=sWinDir + ‘media’ + SOUND;

MediaPlayer.Open;

on EMCIDeviceError do;

procedure TForm1.Timer1Timer(Sender: TObject);

if (min = 0) and (sec = 0) then

MediaPlayer.Play;

on EMCIDeviceError do;

Timer1.Enabled:=False;

ShowMessage(‘Заданный интервал истек’);

Button1.Caption:=’Пуск’;

Label3.Visible:=False;

Label1.Visible:=True;

Edit1.Visible:=True;

Label2.Visible:=True;

Edit2.Visible:=True;

UpDown1.Visible:=True;

UpDown2.Visible:=True;

if (sec = 0) and (min > 0) then

procedure TForm1.Button1Click(Sender: TObject);

if Form1.Timer1.Enabled then

Timer1.Enabled:=False;

Button1.Caption:=’Пуск’;

Label3.Visible:=False;

Label1.Visible:=True;

Edit1.Visible:=True;

Label2.Visible:=True;

Edit2.Visible:=True;

UpDown1.Visible:=True;

UpDown2.Visible:=True;

min:=StrToInt(Edit1.Text);

Sec:=StrToInt(Edit2.Text);

if (sec = 0) and (min = 0) then

ShowMessage (‘Надо задать интервал!’);

Timer1.Enabled:=True;

Label1.Visible:=False;

Edit1.Visible:=False;

Label2.Visible:=False;

Edit2.Visible:=False;

UpDown1.Visible:=False;

UpDown2.Visible:=False;

Label3.Visible:=True;

Button1.Caption:=’Стоп’;

end .
Вывод

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

1. Кучеренко, В. П. Тонкости программирования на Delphi [Текст]: Учебное пособие / В. П. Кучеренко. – М.: «Познавательная книга плюс», 2000. – 192 с.: ил. – 4100 экз. – ISBN 5-8321-0066-2 (в пер.).

Читайте также:
Не удается запустить программу класс не зарегистрирован

2. Архангельский, А. Я. Приемы программирования в Delphi [Текст]: Учебное пособие / А.Я. Архангельский. – М.: ООО «Бином-Пресс», 2004. – 848 с.: ил.

3. Вирт Н. Алгоритмы + структуры = программы. [Текст]: М.: Мир, 1985.

4. Касьянов В.Н. Графы в программировании: обработка, визуализация и применение. / В.А. Евстигнеев – СПб.: БХВ-Петербург, 2003. – 1104 с.

Дата добавления: 2018-10-26 ; просмотров: 632 ; Мы поможем в написании вашей работы!

Поделиться с друзьями:

Источник: studopedia.net

Технические характеристики Постановка задачи

Работа с текстовой информацией при программировании в Windows одна из самых важных задач при разработке пользовательского интерфейса. Поэтому для реализации программы – «Текстовый редактор», необходимо в первую очередь знать основные приёмы работы с текстом в ОС Windows.

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

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

В пункте 2.1. была приведена классическая структура программы под Windows. Разберём эти разделы по порядку:

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

Создание главного окна. На основе зарегистрированного класса с помощью функции CreateWindowsEx можно создать экземпляр окна. Как можно заметить, это весьма напоминает объектную модель программирования (ООП).

Цикл обработки очереди сообщений. Этот раздел является основным в работе программы под Windows. Его можно рассмотреть по порядку:

— Принять очередное сообщение из ряда сообщений данного приложения (GetMessage);

— Транслировать принятое сообщение в правильный порядок дополнительных сообщений (TranslateMessage);

— Передать оттранслированное сообщение, как порядок дополнительных сообщений, процедуре главного окна (DispatchMessage).

— Выход из цикла осуществляется посылкой окну сообщения WM_QUIT, которое функция GetMessage определит как конец обработки очереди сообщений.

Процедура главного окна. Данная процедура является основным приёмником управляющих сообщений, посылаемых от операционной системы окну.

Алгоритм функционирования программы

1. Инициализация программы;

2. Регистрация класса окна;

3. Создание и показ окна;

4. Цикл обработки сообщений;

5. Выход из программы.

Описание и обоснование выбора метода организации входных и выходных данных

Для программы, входными данными являются:

— данные, передаваемые функциями API;

— сообщения, передаваемые от ОС;

Читайте также:
Если в программе есть скрипты которые повторяются в различных местах программы что лучше сделать

— текст, вводимый пользователем.

Выходными данными являются:

— результат обработки текста.

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

Файл pad.asm

.model flat, stdcall ; 32 bit memory model

option casemap :none ; чувствительно к регистру

include pad.inc ; локально включаем этот файл

invoke GetModuleHandle, NULL

mov hInstance, eax

mov CommandLine, eax

WinMain proc hInst :DWORD,

; положим LOCALs в stack

LOCAL wc :WNDCLASSEX

LOCAL Wwd :DWORD

LOCAL Wht :DWORD

LOCAL Wtx :DWORD

LOCAL Wty :DWORD

invoke LoadIcon,hInst,500 ; иконка ID

mov wc.cbSize, sizeof WNDCLASSEX

mov wc.style, CS_HREDRAW or CS_VREDRAW

mov wc.lpfnWndProc, offset WndProc

mov wc.cbClsExtra, NULL

mov wc.cbWndExtra, NULL

m2m wc.hInstance, hInst

mov wc.hbrBackground, eax

mov wc.lpszMenuName, NULL

mov wc.lpszClassName, offset szClassName

m2m wc.hIcon, hIcon

mov wc.hCursor, eax

m2m wc.hIconSm, hIcon

invoke RegisterClassEx, ADDR wc

;Центр окна следующих размеров

Источник: studfile.net

Описание алгоритма и функционирования программы

В этом подразделе будет изложен подробный текстовый алгоритм разрабатываемой программы и его описание.

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

В пункте 2.1. была приведена классическая структура программы под Windows. Разберём эти разделы по порядку:

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

Создание главного окна. На основе зарегистрированного класса с помощью функции CreateWindowsEx можно создать экземпляр окна. Как можно заметить, это весьма напоминает объектную модель программирования (ООП).

Цикл обработки очереди сообщений. Этот раздел является основным в работе программы под Windows. Его можно рассмотреть по порядку:

  • — Принять очередное сообщение из ряда сообщений данного приложения (GetMessage);
  • — Транслировать принятое сообщение в правильный порядок дополнительных сообщений (TranslateMessage);
  • — Передать оттранслированное сообщение, как порядок дополнительных сообщений, процедуре главного окна (DispatchMessage).
  • — Выход из цикла осуществляется посылкой окну сообщения WM_QUIT, которое функция GetMessage определит как конец обработки очереди сообщений.

Процедура главного окна. Данная процедура является основным приёмником управляющих сообщений, посылаемых от операционной системы окну.

Алгоритм функционирования программы

  • 1. Инициализация программы;
  • 2. Регистрация класса окна;
  • 3. Создание и показ окна;
  • 4. Цикл обработки сообщений;
  • 5. Выход из программы.

Описание и обоснование выбора метода организации входных и выходных данных

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

Для программы, входными данными являются:

  • — данные, передаваемые функциями API;
  • — сообщения, передаваемые от ОС;
  • — текстовые файлы;
  • — текст, вводимый пользователем.

Выходными данными являются:

  • — главное окно;
  • — окно редактирования;
  • — результат обработки текста.

Источник: studwood.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru