50381 (Разработка программы при помощи языка программирования языка Delphi), страница 2

2016-07-30СтудИзба

Описание файла

Документ из архива "Разработка программы при помощи языка программирования языка Delphi", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "50381"

Текст 2 страницы из документа "50381"

Словесный алгоритм действий при сохранении файла:

1. Открыть требуемый файл для записи.

2. Установить на начало массива (номер равен нулю).

3. Если достигнут конец массива, перейти на пункт 6.

4. Сохранить очередной элемент массива под номером в конец файла.

5. Нарастить на 1 и перейти на пункт 3.

6. Закрыть файл.

7. Конец.

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

1. Установить на начало исходного массива А.

2. Обнулить размерность результирующего массива В.

3. Если достигнут конец массива А, перейти на пункт 8.

4. Если запись исходного массива А удовлетворяет критериям поиска, перейти на пункт 4, если не удовлетворяет, перейти на пункт 7.

5. Нарастить длину результирующего массива В на единицу.

6. Записать элемент массива А в конец результирующего массива В.

7. Нарастить на единицу и перейти на пункт 3.

8. Отобразить содержимое массива В в таблице на экранной форме.

9. Конец.

Анализируя требования к функциям разрабатываемого приложения под разработанную экранную форму можно выделить следующие программные модули:

  1. вывод информации о разработчике программы и задании на курсовой проект;

  2. создание нового типизированного файла, с информацией о компьютерах (инициализация временного массива записей );

  3. сохранение содержимого файла в типизированном файле на жестком диске;

  4. сохранение содержимого файла в типизированном файле на жестком диске под новым именем;

  5. вывод информации о компьютере текущей записи массива в поля ввода на экранной форме;

  6. перенос информации из типизированного файла в динамический массив и вывод содержимого на форме;

  7. продвижение к следующей записи в массиве;

  8. продвижение на предыдущую запись массива;

  9. перенос информации из полей ввода в поля текущей записи из массива;

  10. добавление новой записи в массив;

  11. удаление текущей записи из массива;

  12. поиск записей по какому-либо критерию и вывод результатов на экранную форму;

  13. вывод содержимого динамического массива на объекте типа TStringGrid.

Каждый из вышеприведенных модулей реализуем при помощи процедуры. Модули 1,2, 3, 4, 6 будут обработчиками нажатий на соответствующие пункты главного меню. Для запуска модулей 7, 8, 9, 10, 11, 12 предусмотрим экранные кнопки на форме, для чего поместим на форму объекты типа TBitButton. А сами процедуры будут реализованы как обработчики нажатия на соответствующие кнопки. Модули 5, 13 реализуем как отдельную процедуру.

Cоставим алгоритм приложения, который представлен в приложении на рисунке A.1. На алгоритме приведены основные события экранной формы. В этом алгоритме:

блок №3 реализован процедурой NOpenClick,

блок №4 процедурой NSaveClick,

блок №5 - процедурой NShowClick,

блок №6 - процедурой NSaveAsClick,

блок №7 - процедурой NCreateClick,

блок №8 реализован процедурой BBDeleteClick,

блок №9 процедурой NInfoClick,

блок №10 - процедурой BBNextClick,

блок №11 - процедурой BBPrevClick,

блок №12 - процедурой BBUpdateClick,

блок №13 - процедурой BBAddClick,

блок №14 - процедурой BBSearchClick,

блок №15 - процедурой NExitClick.

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


3 ОПИСАНИЕ ПРОГРАММНЫХ МОДУЛЕЙ



3.1 Описание переменных и объектов

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

Для организации интерфейса с пользователем были разработаны экранные формы, в результате чего на экранной форме Form1 поместили элементы, приведенные в таблице 3.1

Таблица 3.1– Описание визуальных объектов на форме Form1

Наименование

Тип

Назначение

MainMenu1

TMainMenu

главное меню

NOpen, NSave, NSaveAs, NCreate, NExit, NInfo, NShow

TMenuItem

пункты главного меню «Открыть», «Сохранить», «Сохранить как», «Создать», «Выход», «Информация», «Показать»

EName, EHDD, ERAM, EMonitor,

TEdit

поля для ввода данных о наименовании компьютера, объеме диска, памяти, типе монитора.

RGrInet

TRadioGroup

поле для ввода информации о подключении к интернет

SGrid1

TStringGrid

вывод содержимого файла в виде таблицы

BBPrev

TBitBtn

кнопка с надписью «Предыдущая запись»

BBNext

TBitBtn

кнопка с надписью «Следующая запись»

BBDelete

TBitBtn

кнопка с надписью «Удалить»

BBAdd

TBitBtn

кнопка с надписью «Добавить»

BBUpdate

TBitBtn

кнопка с надписью «Редактировать»

BBSearch

TBitBtn

кнопка с надписью «Поиск»

OpenDlg1

TOpenDialog

стандартный диалог открытия файлов

SaveDlg

TSaveDialog

стандартный диалог сохранения файла

В разделе var опишем переменные, приведенные в таблице 3.2

Таблица 3.2– Переменные программы

Наименование

Тип

Назначение

F

file of TComp

типизированный файл с данными о компьютерах

Comp

TComp

информация об одном компьютере

AComp

array of TComp

данные обо всех компьютерах в виде массива

CurK

integer

номер текущей записи в массиве AComp

Fname

string

имя текущего (рабочего) файла

Для хранения данных о компьютере разработаем составной тип данных TComp c полями, приведенными в таблице 3.3

Таблица 3.3 – Информационные поля о компьютере

Наименование

Тип

Назначение

Name

string[20]

наименование компьютера

HDD

real

объём жесткого диска

RAM

integer

объём оперативной памяти

Monitor

string[20]

тип монитора

Inet

boolean

наличие подключения к интернет

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

Таблица 3.4 Пользовательские процедуры и обработчики событий

Наименование

Обр-к

Назначение

Строки

GetComp

-

поиск компьютера по имени

78-89

ShowComp

-

вывод информации о компьютере на форму

90-101

ShowCompInGrid

-

вывод информации о компьютере в таблицу

102-114

ShowAComp

-

вывод содержимого массива FComp в таблицу

115-127

BBAddClick

+

добавление новой записи о новом компьютере

128-149

BBPrevClick

+

переход на предыдущую запись

150-157

BBNextClick

+

переход на следующую запись

158-165

NSaveClick

+

сохранение текущего файла

166-179

NSaveAsClick

+

запуск диалога и сохранение в файле с заданным именем

180-194

NOpenClick

+

запуск диалога и открытие файла

195-216

BBDeleteClick

+

удаление текущей записи

217-230

NCreateClick

+

инициализация массива AComp

231-237

FormCreate

+

инициализация шапки таблицы

238-247

BBUpdateClick

+

обновление записи в массиве данными из полей ввода

248-260

NShowClick

+

вывод содержимого текущего файла на форму

261-278

BBSearchClick

+

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

279-312

NInfoClick

+

вывод информации о разработчике

313-317

NExitClick

+

выход из приложения

318-322

Более подробно некоторые процедуры будут рассмотрены далее.

Кроме приведенных объектов, в разделе uses подключается модуль Unit2. В модуле Unit2 приведена форма AboutBox, на которой выводится информация о разработчике приложения и задании проекта.

3.2 Описание пользовательских процедур

Функция GetComp предназначена для поиска компьютера в массиве по имени. Синтаксис: GetComp(name:string;AComp:ATComp;var Comp:TComp):boolean. Где name – наименование компьютера, AComp – массив в котором производится поиск, Comp – объект, в который возвращается найденный объект. Если поиск удачен, то функция возвращает значение true, иначе – false.

Процедура ShowComp предназначена для вывода информации о компьютере в поля формы. Синтаксис: ShowComp(Comp:TComp). Где Comp – запись, хранящая информацию о компьютере.

Процедура ShowCompInGrid предназначена для вывода информации о компьютере в поля таблицы. Синтаксис:

ShowCompInGrid(Comp:TComp; Sgr:TStringGrid;Row:integer).

где Comp – запись, хранящая информацию о компьютере,

SGr – таблица, в которую производится вывод,

Row – номер строки, в которую выводится информация.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5137
Авторов
на СтудИзбе
441
Средний доход
с одного платного файла
Обучение Подробнее