Получение сведений об ассортименте обуви в магазине фирмы
Функциональная структура задачи "Получение сведений об ассортименте обуви в магазине фирмы". Описание алгоритма задачи программы. Написание текста программы на языке программирования Турбо-Паскаль (версия 7.0). Описание результатов испытаний программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 23.04.2012 |
Размер файла | 60,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
СОДЕРЖАНИЕ
1. Описание постановки задачи
1.1 Характеристика задачи
1.2 Исходные данные
1.3 Результаты решения
2. Описание проектных решений
2.1 Функциональная структура задачи, программы
2.2 Описание алгоритма задачи
3. Описание программы
3.1 Структура программы
3.2 Текст программы
3.3 Исполнение программы
4. Описание результатов испытаний программы
Приложения
Приложение 1. Исходный текст программы
Приложение 2. Текст тестового файла
Приложение 3. Тексты программ создания и печати тестового файла
Приложение 4. Контрольные примеры исполнения программы
1. Описание постановки задачи
1.1 Характеристика задачи
Задача Получение сведений об ассортименте обуви в магазине фирмы решается с целью получения сведений об окладах сотрудников определенного отдела. Исходными для решения задачи данными является набор данных (файл) на магнитном диске, содержащий информацию о сотрудниках. В начале решения задачи вводится с клавиатуры запрос, представляющий собой название отдела, определяющий для какого отдела должны быть получены указанные выше сведения.
1.2 Исходные данные
Исходная для решения задачи Получение сведений об ассортименте обуви в магазине фирмы информация содержится в одном дисковом файле и в указываемом (вводимом с клавиатуры) в начале решения задачи запросе пользователя.
Структура элемента файла book (дисковое имя - `book.dat '):
Артикул - строка;
Наименование - строка;
Количество - целое число;
Стоимость одной пары - вещественное число.
Запрос пользователя представляет собой:
Артикул,
1.3 Результаты решения
Результатом решения задачи на ПК является таблица (видеограмма) Список обуви артикула (рис. 1.1), которая содержит:
Наименование (строка),
Цена (вещественное число),
Количество (целое число)
Данные в таблице располагаются в порядке возрастания цены.
Список обуви артикула
Наименование |
Цена |
Количество |
|
БОТИНКИ |
452 |
16 |
|
… |
… |
… |
2. Описание проектных решений
2.1 Функциональная структура задачи, программы
На рис. 2.1 представлена схема иерархии процедур задачи Получение сведений об ассортименте обуви в магазине фирмы, полученная в результате её декомпозиции.
Размещено на http://www.allbest.ru/
Рис. 2.1 Схема иерархии процедур задачи
На рис. 2.2 представлена функциональная структура программы решения задачи, полученная на основе схемы иерархии ее процедур.
Размещено на http://www.allbest.ru/
Рис. 2.2 Функциональная структура программы
Помимо основной программы с именем MY_FILE, программа содержит следующие подпрограммы:
1) подпрограмма vvod, которая обеспечивает ввод и проверку запроса(ввод артикула);
1) подпрограмму poisk, которая обеспечивает обработку файла book с целью получения массива наименования, количества и цены обуви;
2) подпрограмму sort, которая обеспечивает сортировку данных по возрастанию цены;
3) подпрограмму vivod, которая обеспечивает вывод выходного массива;
Аргументы описаны в основной программе, они являются глобальными и используются во всех вложенных блоках (процедурах).
2.2 Описание алгоритма задачи
На рис. 2.3. - 2.6 представлены схемы обобщенного алгоритма задачи Получение сведений об ассортименте обуви в магазине фирмы и алгоритмов отдельных её процедур. Смысл используемых в них условных обозначений (имен, идентификаторов) приведен в табл. 2.1. Обобщенный алгоритм описывается в основной программе. Алгоритмы отдельных процедур - в соответствующих подпрограммах (см. 2.1.).
Таблица 2.1
Идентификатор |
Формат |
Смысл |
|
book |
файл записей |
исходные данные |
|
n, к, i |
целые числа |
счетчики |
|
art |
строка |
артикул |
|
nam |
строка |
наименование |
|
kol |
целое число |
количество |
|
cena |
вещественный массив |
цена за единицу |
3. Описание программы
3.1 Структура программы
При написании программы решения задачи Получение сведений об ассортименте обуви в магазине фирмы использовалась система (язык) программирования Турбо-Паскаль (версия 7.0).
Функциональная структура программы (состав и взаимосвязь программных единиц исходного текста её - основной программы и подпрограмм) определена в 2.1.
Программа является описанием алгоритма задачи, приведенного в 2.2.
3.2 Текст программы
Исходный текст программы решения задачи Получение сведений об ассортименте обуви в магазине фирмы (на языке Турбо-Паскаль, версия 7.0) приведен в приложении 1.
Рис. 2.3 Схема алгоритма задачи Получение сведений об ассортименте обуви в магазине фирмы
Размещено на http://www.allbest.ru/
Рис. 2.4 Схема алгоритма выбора данных
Размещено на http://www.allbest.ru/
Рис. 2.5 Схема алгоритма сортировки
Размещено на http://www.allbest.ru/
Рис. 2.6 Схема алгоритма вывода
3.3 Исполнение программы
Для исполнения программы решения задачи Получение сведений об ассортименте обуви в магазине фирмы необходим ПК типа PC с клавиатурой и монитором. Программа предварительно откомпилирована, вызывается для исполнения стандартными средствами.
До начала исполнения программы на магнитном диске должен быть сформирован файл с исходными данными, структура, содержание и имя которого описаны в 1.2. В начале исполнения программы необходимо ввести с клавиатуры запрос, конкретизирующий условия решения задачи (см. 1.2).
4. Описание результатов испытаний программы
турбо паскаль программирование
В ходе испытаний (тестирования и контрольных примеров исполнения) программы решения задачи Получение сведений об ассортименте обуви в магазине фирмы использовался тестовый файл, текст которого приведен в приложении 2 (программы создания и печати тестового файла приведен в приложении 3), а также запросы для разных вариантов решения задачи:
технический
бухгалтерия
общий
После устранения ошибок в программе для указанных исходных данных (контрольных примеров) получены правильные результаты решения задачи (приложение 4), что свидетельствует о правильности разработанной программы.
Приложение 1
Исходный текст программы решения задачи Получение сведений об ассортименте обуви в магазине фирмы
PROGRAM K_RABOTA;
{Курсовая работа по Программированию
студента 05-ВИЭ-3 Алексеева А.А.
Вариант 40}
type zap=record
fam: string[20];
otdel: string[30];
god: integer;
oklad: real;
end;
var
sved: file of zap;
X: zap;
n: integer;
fo: array [1..10] of string [20];
oko: array [1..10] of real;
opz: string [30];
procedure obrab;
{Подпрограмма выбора данных}
begin
Assign(sved,'sved.dat');
reset (sved);
n:=0;
while not EOF (sved) do begin
read(sved,x);
if (opz=x.otdel) then begin
n:=n+1;
fo[n]:= x.fam;
oko[n]:=x.oklad;
end;
end;
close(sved);
writeln('Число сотрудников в отделе',
opz:30, ':',n:3);
end;
procedure sort;
{Подпрограмма сортировки}
var
i,k:integer;
f:string [20];
c:real;
begin
for i:=1 to n-1 do
for k:=i+1 to n do
if oko[i]<oko[k] then begin
c:=oko[i];
oko[i]:= oko[k];
oko[k]:=c;
f:=fo[i];
fo[i]:=fo[k];
fo[k]:=f;
end;
end;
procedure vuvod;
{Подпрограмма вывода результата}
var
i: integer;
begin
writeln;
writeln('Список сотрудников отдела:', opz:30);
writeln;
writeln('------------------------------------');
writeln('! N! Фамилия ! Оклад !');
writeln('------------------------------------');
for i:=1 to n do
writeln('!',i:2,'!',fo[i]:20,'!',oko[i]:10:2,
'!');
writeln('------------------------------------');
writeln;
end;
{Основная программа}
begin
writeln('Введите название отдела');
readln(opz);
obrab;
{Вызов процедуры выбора данных}
if n=0 then writeln ('Нет данных по отделу:',
opz:30)
else
begin
if n>1 then sort;
{Вызов процедуры сортировки}
vuvod;
{Вызов процедуры вывода результатов}
end;
readln;
end.
Приложение 2
Текст тестового файла на магнитном диске
Алексеев |
отдел кадров |
1955 |
9900 |
|
Иванов |
технический |
1980 |
10000 |
|
Петрова |
бухгалтерия |
1968 |
8500 |
|
Николаев |
технический |
1985 |
8000 |
|
Смирнов |
технический |
1963 |
7500 |
|
Сидоров |
технический |
1964 |
9000 |
|
Кузнецов |
технический |
1971 |
5000 |
|
Ильина |
отдел кадров |
1980 |
4500 |
|
Сергеева |
бухгалтерия |
1968 |
9500 |
|
Яковлев |
бухгалтерия |
1956 |
6000 |
Приложение 3
Текст программ создания и печати тестового файла
program file_new;
type zap=record
fam: string[20];
otdel: string[30];
god: integer;
oklad: real;
end;
var
sved :file of zap;
X:zap;
k:integer;
begin
Assign(sved,'sved.dat');
rewrite (sved);
k:=1;
while k<=10 do
begin
writeln('Введите фамилию',k:3, ' сотрудника');
readln(x.fam);
writeln('Введите название отдела');
readln(x.otdel);
writeln('Введите год рождения');
readln(x.god);
writeln('Введите оклад');
readln(x.oklad);
K:=k+1;
write(sved,x);
end;
writeln('Число записей в файле:',K:2); writeln;
reset(sved);
writeln('Данные файла'); writeln;
while not EOF (sved) do begin
read(sved,x);
writeln(x.fam:22,x.otdel:32,x.god:5,x.oklad:10:2);
end;
close(sved);
end.
Приложение 4
Контрольные примеры исполнения программы
Пример 1. Запрос: технический
Результат:
Список сотрудников отдела: технический
N |
Фамилия |
Оклад |
|
1 |
Иванов |
10000.00 |
|
2 |
Сидоров |
9000.00 |
|
3 |
Николаев |
8000.00 |
|
4 |
Смирнов |
7500.00 |
|
5 |
Кузнецов |
5000.00 |
Пример 2. Запрос: бухгалтерия
Результат:
Список сотрудников отдела: бухгалтерия
N |
Фамилия |
Оклад |
|
1 |
Сергеева |
9500.00 |
|
2 |
Петрова |
8500.00 |
|
3 |
Яковлев |
6000.00 |
Пример 3. Запрос: общий
Результат:
Нет данных по отделу: общий
Размещено на Allbest.ru
Подобные документы
Создание приложения, исполняющего трансляцию программы из языка Паскаль в язык Си: разработка алгоритма реализации задачи, описание необходимых констант, переменных, функций и операторов, представление листинга программы и распечатка результатов.
курсовая работа [305,9 K], добавлен 03.07.2011Сравнительный анализ языков программирования высокого уровня Си и Паскаль. Реализация алгоритма обработки данных. Тестирование и отладка программы или пакета программ. Структура программы на языке Турбо Паскаль. Указатели и векторные типы данных.
курсовая работа [233,5 K], добавлен 14.12.2012Приобретение теоретических и практических навыков программирования на языке Паскаль. Математическая формулировка задачи и выбор метода обработки информации. Разработка алгоритма и его описание. Описание программы. Форма представления исходных данных.
курсовая работа [224,3 K], добавлен 11.02.2016Освоение технологии структурного программирования и применения стандартных методов работы с одномерными массивами при разработке и создании программы на языке Турбо Паскаль. Разработка программы методом пошаговой детализации с помощью псевдокода.
реферат [276,9 K], добавлен 27.02.2008Постановка задачи и математическое описание ее решения. Назначение программного обеспечения. Описание принятых идентификаторов. Выбор языка программирования и написание программы на входном языке. Методика отладки программы и проведение ее тестирования.
курсовая работа [96,1 K], добавлен 25.06.2013Язык программирования Турбо Паскаль. Запись алгоритма на языке программирования и отладка программы. Правила записи арифметических выражений. Стандартное расширение имени файла, созданного системным редактором. Составной оператор и вложенные условия.
курсовая работа [75,0 K], добавлен 21.03.2013Основные сведения о системе программирования Турбо Паскаль. Структура программы на Паскале и ее компоненты. Особенности и элементы языка Турбо Паскаль. Порядок выполнения операций в арифметическом выражении, стандартные функции и оператор присваивания.
лекция [55,7 K], добавлен 21.05.2009"Пятнашки" на первый взгляд простая игра, но для ее реализации необходимо обратится ко всем разделам программирования в среде Турбо Паскаль. Назначение и область применения. Описание алгоритма программы. Программное и аппаратное обеспечение программы.
курсовая работа [308,0 K], добавлен 04.07.2008Создание транслятора, обрабатывающего код программы на языке Паскаль и за счет эквивалентных операторов генерирующего программу на Си. Особенности внешней спецификации и работы лексического анализатора. Структура программы, вывод результатов на экран.
курсовая работа [254,0 K], добавлен 02.07.2011Создание программы на языке объектно-ориентированного программирования С++, реализующей построчный перевод текста (по словам) с английского на русский. Описание алгоритма решения задачи. Основные функции программы, примеры результатов ее работы.
отчет по практике [527,5 K], добавлен 10.04.2016