Обработка статистических данных по файлу
Белорусский национальный технический университет
приборостроительный факультет
Кафедра Информационно-измерительнОЙ техникИ и технологии
Пояснительная записка
К
КУРСОВОЙ РАБОТЕ
по
дисциплине «Языки программирования»
Тема: Обработка
статистических данных по файлу
Минск 2011
РЕФЕРАТ
Пояснительная записка 38 с., 6 рис., 5 источников, 3 прил.
С++, ФАЙЛ, ПОДСЧЕТ, СИМВОЛ, ТАБЛИЦА, КОМПОНЕНТ
Целью курсовой работы является составление программы, с помощью которой
пользователь может получать статистические сведения о текстовой информации.
СОДЕРЖАНИЕ
программа статистический текстовый информация
Введение
. Разработка
алгоритма
.1 Постановка
задачи
.2 Описание
алгоритма
. Разработка
рабочего проекта
.1 Описание
логической структуры
.2 Входные
данные
.3 Выходные
данные
.4 Вызов и
загрузка
.
Тестирование проекта
. Внедрение
.1 Условия
выполнения программы
.2 Сообщения
оператору
Заключение
Список
использованных источников
Приложение А.
Блок-схема программы
Приложение Б.
Листинг программы
Приложение В.
Результаты выполнения программы
ВВЕДЕНИЕ
Целью курсовой работы является составление программы, с помощью которой
пользователь может получать статистические сведения о текстовой информации.
В данной курсовой работе для разработки программы использовался язык С++
и среда программирования Borland C++ Builder 6.
Первый раздел посвящен описанию решения задачи. Решение задачи начинается
с ее постановки. При постановке задачи выясняется конечная цель и
вырабатывается общий подход к решению задачи. Приводится описание исходных
данных, условий задачи и целей ее решения.
В разделе описания программы дается обобщенное словесное описание
алгоритма решения поставленной задачи.
В разделе описания разработки программы указывается обозначение и
наименование программы; программное обеспечение, необходимое для
функционирования программы; язык программирования, на котором написана
программа.
В разделе описания тестирования программы кратко описывается среда
программирования.
1. РАЗРАБОТКА АЛГОРИТМА
1.1 Постановка задачи
Необходимо составить программу для обработки текстовой информации:
пользователь вводит текст вручную или загружает из файла;
программа выводит статистические данные по файлу: общее число знаков,
число гласных, согласных, знаков препинания;
сохранение статистических данных в текстовом файле.
Язык программирования Си поддерживает множество функций стандартных
библиотек для файлового ввода и вывода. Эти функции составляют основу
заголовочного файла стандартной библиотеки языка Си <stdio.h>.
Функциональность ввода-вывода языка Си по текущим стандартам реализуется
на низком уровне. Язык Си абстрагирует все файловые операции, превращая их в
операции с потоками байтов, которые могут быть как "потоками ввода",
так и "потоками вывода". В отличие от некоторых ранних языков
программирования, язык Си не имеет прямой поддержки произвольного доступа к
файлам данных; чтобы считать записанную информацию в середине файла,
программисту приходится создавать поток, ищущий в середине файла, а затем
последовательно считывать байты из потока.
Потоковая модель файлового ввода-вывода была популяризирована во многом
благодаря операционной системе Unix, написанной на языке Си. Большая
функциональность современных операционных систем унаследовала потоки от Unix, а
многие языки семейства языков программирования Си унаследовали интерфейс
файлового ввода-вывода языка Си с небольшими отличиями (например, PHP).
Стандартная библиотека C++ отражает потоковую концепцию в своем синтаксисе
(iostream).
.2 Описание алгоритма
Алгоритм работы с программой включает следующую последовательность
действий:
ввод данных с клавиатуры или загрузка из текстового файла;
получение статистической информации;
сохранение статистической информации.
Рисунок
1.1 - Обобщенный алгоритм работы программы
2.
РАЗРАБОТКА РАБОЧЕГО ПРОЕКТА
.1
Описание логической структуры
Программа
состоит из следующих процедур:
процедура
- обработчик события однократного щелчка мышью по компоненту FileListBox1:
void __fastcall TForm1::FileListBox1Click(TObject
*Sender);
-процедура
- обработчик события при закрытии формы:
void __fastcall TForm1::FormClose(TObject *Sender,
TCloseAction &Action);
-процедура
- обработчик события при создании формы:
void __fastcall TForm1::FormCreate(TObject *Sender);
-процедура
- обработчик события при однократном щелчке по кнопке «Сохранить как…»:
void __fastcall TForm1::Button2Click(TObject *Sender);
-процедура
- обработчик события при однократном щелчке по кнопке «Получить статистические
данные»:
void __fastcall TForm1::Button1Click(TObject *Sender).
2.2
Входные данные
Входными
данными программы является текстовая информация.
Рисунок
2.1 - Входные данные для обработки
2.3
Выходные данные
Рисунок
2.2 - Результат получения статистической информации
Рисунок
2.3 - Окно сохранения результатов работы
2.4
Вызов и загрузка программы
Программа
может быть загружена путем запуска EXE-файла из Windows.
После
запуска программы перед пользователем появляется окно приложения. Пользователю
необходимо ввести все исходные данные и получить результат.
3.
ТЕСТИРОВАНИЕ ПРОГРАММЫ
++
Builder - среда быстрой разработки (RAD), выпускаемая компанией CodeGear,
дочерней фирмой компании Embarcadero (ранее Borland). Предназначена для
написания программ на языке программирования C++. C++ Builder объединяет
Библиотеку визуальных компонентов и среду программирования (IDE), написанную на
Delphi с компилятором C++. Цикл разработки аналогичен Delphi, но с
существенными улучшениями, добавленными в C++ Builder. Большинство компонентов,
разработанных в Delphi, можно использовать и в C++ Builder без модификации, но,
к сожалению, обратное утверждение не верно.++ Builder содержит инструменты,
которые позволяют осуществлять настоящую визуальную разработку
Windows-приложений методом drag-and-drop, упрощая программирование благодаря
WYSIWYG редактору интерфейса, встроенному в его среду разработки.
C++ Builder представляет собой SDI-приложение, главное окно которого
содержит настраиваемую инструментальную панель (слева) и палитру компонентов
(справа). Помимо этого, по умолчанию при запуске C++ Builder появляются окно инспектора объектов (слева) и форма
нового приложения (справа). Под окном формы приложения находится окно редактора
кода.
Формы являются основой приложений C++ Builder. Создание пользовательского
интерфейса приложения заключается в добавлении в окно формы элементов объектов
C++ Builder, называемых компонентами. Компоненты C++ Builder располагаются на
палитре компонентов, выполненной в виде многостраничного блокнота. Важная
особенность C++ Builder состоит в том, что он позволяет создавать собственные
компоненты и настраивать палитру компонентов, а также создавать различные
версии палитры компонентов для разных проектов.
Компоненты C++ Builder разделяются на видимые (визуальные) и
невидимые (невизуальные). Визуальные компоненты появляются во время выполнения
точно так же, как и во время проектирования. Примерами являются кнопки и
редактируемые поля. Невизуальные компоненты появляются во время проектирования
как пиктограммы на форме. Они никогда не видны во время выполнения, но обладают
определенной функциональностью (например, обеспечивают доступ к данным,
вызывают стандартные диалоги Windows и др.)
Каждый компонент C++ Builder имеет три разновидности характеристик:
свойства, события и методы.
Свойства являются атрибутами компонента, определяющими его внешний вид и
поведение. Многие свойства компонента в колонке свойств имеют значение,
устанавливаемое по умолчанию (например, высота кнопок). Свойства компонента
отображаются на странице свойств (Properties). Инспектор объектов отображает
опубликованные (published) свойства компонентов. Помимо published-свойств,
компоненты могут и чаще всего имеют общие (public), опубликованные свойства,
которые доступны только во время выполнения приложения.
Страница событий (Events) инспектора объектов показывает список событий,
распознаваемых компонентом (программирование для операционных систем с
графическим пользовательским интерфейсом предполагает описание реакции
приложения на те или иные события, а сама операционная система занимается
постоянным опросом компьютера с целью выявления наступления какого-либо
события). Каждый компонент имеет свой собственный набор обработчиков событий.
Метод является функцией, которая связана с компонентом, и которая
объявляется как часть объекта.
4. ВНЕДРЕНИЕ
4.1 Условия выполнения программы
Программа может быть загружена путем запуска EXE-файла из Windows.
Пользователю необходимо ввести текстовую информацию или загрузить ее из файла.
4.2 Сообщения оператору
После запуска программы перед пользователем появляется окно программы
(рисунок 4.1).
Рисунок 4.1 - Окно программы
Все окно программы разделено на две функциональные части:
«Файл 1» - для открытия текстового файла;
«Результат» - для отобращения статистической таблицы.
Для получения статистической информации о содержимом файла неоходимо
щелкнуть по кнопке «Получить статистические данные».
Рисунок 4.2 - Результат работы программы
ЗАКЛЮЧЕНИЕ
В данной курсовой работе был рассмотрен процесс создания компьютерной
программы на языке С++. В результате выполнения задания была создана рабочая
программа, были приобретены навыки создания алгоритмов, изучены основы
алгоритмизации и основы языка С++, приобретены навыки работы с различными
типами данных, освоена специфика работы в среде программирования.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Джерод
Холлингворс, Дэн Баттерфилд, Боб Свот C++ Builder 5. Руководство разработчика = C++
Builder 5 Developer's Guide. - М.: «Диалектика», 2001.
. Прата
Стивен. Язык программирования С. Лекции и упражнения, 5-е издание. : Пер. с
англ. - М.: Издательский дом «Вильямс», 2006. - 960 с. : с ил. - Парал. Тит.
Англ.
. Аксёнкин
М.А., Целобёнок О.Н. Язык С. - Мн. : Унiверсiтэцкае,
1995. - 302 с.
. Громов
Ю.Ю., Татаренко С.И. Программирование на языке СИ: Учебное пособие. - Тамбов,
1995.- 169 с.
. Мартынов Н.
Н. Программирование для Windows на C/C++. - М.: Издательство «БИНОМ», т. 1,
2004; т. 2, 2005