Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Паскаль / курсовые / обувной магазин

.doc
Скачиваний:
38
Добавлен:
10.12.2013
Размер:
68.1 Кб
Скачать

Волжский университет имени В.Н.Татищева

Кафедра “Информатика и системы управления”

КУРСОВАЯ РАБОТА

по дисциплине : “Основы технологии программирования”

Тема: “Обувной магазин”

Выполнил: ХХХ

ХХХ

Преподаватель: ХХХ

Тольятти 2005

Оглавление

  1. Задание

  2. Описание предметной области;

  3. Описание алгоритма задачи;

  4. Список используемой литературы;

  5. Приложения:

  • листинг программ;

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

Волжский университет имени В.Н.Татищева

Кафедра “Информатика и системы управления”

Специальность: 071900 “Информационные системы”

ЗАДАНИЕ

на курсовой проект по дисциплине

Основы технологии программирования”

Студенту _________Комаровой Людмиле Сергеевне_______________________

Группа ___________ИТЗ - 301__________________________________________

Тема проекта ______ «Обувной магазин» _____________________________

Календарный график задания___________________________________________

____________________________________________________________________

СОДЕРЖАНИЕ ЗАДАНИЯ

Дан файл, содержащий сведения об ассортименте обуви в магазине фирмы. Каждая запись содержит поля – артикул, наименование, количество, стоимость одной пары. Артикул начинается с буквы Д для дамской обуви, М – для мужской, П – для детской. Написать программу, выдающую следующую информацию:

- о наличии и стоимости обуви артикула Х;

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

Значение Х вводится по запросу с терминала.

____________________________________________________________________

Руководитель курсовой работы Ахмедханлы Деля Михайловна

Студент Комарова Людмила Сергеевна

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

Программа «Наличие товара на складе обувного магазина» предназначена для получения информации о наличии товара на складе и его цены.

Программа написана на Turbo Pascal версия 7.1, работает в операционной среде MS DOS.

Программа «Наличие товара на складе обувного магазина» содержит таблицу, в которой находятся следующие графы: артикул, наименование товара, цена и количество. В программе эта таблица выглядит следующим образом:

type

obuv=record

art: string [7];

name: string [15];

cena: real;

kol: integer;

end;

где: art – артикул, имеет расширение string и занимает 7 байт; name – наименование, имеет расширение string и занимает 15 байт; cena - цена, имеет расширение real и занимает 6 байт; kol - количество, имеет расширение integer и занимает 2 байта.

Имя поля

Тип переменной

Количество знаков

артикул

art

string [7]

7

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

name

string [15]

15

цена

cena

real

4(2)

количество

kol

integer

4

В целом одна компонента таблицы занимает 30 байт.

Описание алгоритма задачи.

Integer - Целочисленная переменная обозначающая обычные целые числа (2 байта). (-3276832767)

String - строковые переменные (255 байт).

Real - служит для хранения вещественных чисел (6 байт)

type - Пользовательский тип данных:

READ (<список - ввода>) - имя оператора ввода;

WRITE (<список - вывода>) - имя оператора вывода;

READLN (a, b, c) - после вода значений a, b и c курсор перемещается на следующую строку.

WRITELN - без списка вывода можно использовать для пропуска строк при оформлении вывода результатов.

Оператор: IF < условия > THEN P1 [ ELSE P2 ];

если то иначе (не обязательная часть)

По этому оператору выполняется "тело цикла", а затем проверяется <условие>, если оно не выполнилось, цикл повторяется. И так до тех пор, пока <условие> не будет выполнено.

Необходимо помнить: если <условие> сразу выполнилось, цикл будет пройден один раз.

Оператор цикла с постусловием:

REPEAT { - тело цикла UNTIL <условие>;

где P1, P2, …PN - любые операторы.

По этому оператору выполняется "тело цикла", а затем проверяется <условие>, если оно не выполнилось, цикл повторяется. И так до тех пор, пока <условие> не будет выполнено.

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

Rewrite (ff); - создает новый файл, имя которого указано в assign (ff, name), т.е. с именем, хранящимся в строковой переменной name.

Reset(ff); - открывает уже существующий файл с именем, указанным в assign. Файл доступен и для записи и для чтения. Внутренний указатель при этом ставится в начало файла.

Seek (ff, n); - данная процедура перемещает указатель в файле на элемент с номером n.

Write(ff, buf); - данная процедура пишет одну компоненту файла из переменной буфер.

Список используемой литературы:

1. С.А. Обрамов, Е.В. Зима «Начала программирования на языке Pascal»;

2. Н.Д. Васюкова В.В. Тюляева «Практикум по основам программирования. язык Pascal»;

3. Г.Л. Симашка А.И. Салтыков «Программирование на языке Pascal »;

4. В.Г. Баула, Н.Д. Васюкова, В.В. Тюляева «Основы программирования и алгоритмические языки»;

5. В.В. Фаронов «TururboPascai 7.0 практика программирования»

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

program <Sklad>;

type

obuv=record

art: string [7];

name: string [15];

cena: real;

kol: integer;

end;

var

ff: file of obuv;

buf: obuv;

ch: char;

x: string [7];

begin

assign (ff,'tovar.dat');

writeln ('Создать новый файл - Y/N');

readln (ch);

if ch = 'Y' then

rewrite (ff) {Создание нового файла}

else

begin

reset (ff); {Открыть файл}

seek (ff, filesize (ff)); {Переместить указатель в конец файла}

end;

repeat

writeln ('Будите вводить- Y/N');

readln (ch);

if ch = 'Y' then

begin

writeln ('Введите артикул');

readln (buf.art);

writeln (' Введите наименование');

readln (buf.name);

writeln (' Введите цену');

readln (buf.cena);

writeln (' Введите количество');

readln (buf.kol);

write (ff,buf); {Запись первой компоненты файла}

end;

until ch = 'N';

writeln ('Вы хотите просмотреть наличие женской обуви?- Y/N');

readln (ch);

if ch = 'Y' then

begin

begin

reset (ff); {Переместить указатель в начало файла}

repeat

read (ff,buf); {Чтение всей компоненты из файла}

if buf.art[1] = 'Д' then

writeln (buf.art,buf.name,buf.cena,buf.kol);

until eof (ff);

end;

end

else

begin

writeln (' Введите артикул');

readln (х);

reset (ff); {Переместить указатель в начало файла}

repeat

read (ff,buf); {Чтение всей компоненты из файла}

if buf.art = x then

writeln(buf.art,buf.name,buf.cena,buf.kol);

until eof (ff);

end;

readln;

Close (ff);

end.

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

Соседние файлы в папке курсовые