МИНИСТЕРСТВО
ТРАНСПОРТА РОССИЙСКОЙ ФЕДЕРАЦИИ
(МИНТРАНС РОССИИ)
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА (РОСЖЕЛДОР)
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ПУТЕЙ СООБЩЕНИЯ (СГУПС)
Кафедра «Информационные технологии транспорта»
К У Р С О В О Й П Р О Е К Т
По дисциплине «Информатика»
Тема: «Работа с текстовыми и типизированными файлами,
данными типа запись»
Выполнил(а) |
|
Проверил |
||
________________ Подпись |
Ст. гр. ИСТ-112 Павлючков Г.Е. |
|
________________ Подпись |
Преподаватель Нартова М.М.
|
________________ Дата |
|
|
________________ Дата |
|
2007 г.
Содержание
1.Задание…………………………………………………………...3
2.Введение………………………………………………………....4
3.Инструкция пользования………………………………………..6
4.Исходный код…………………………………………………....8
5.Рецензия разработчика программы…………………………...16
5.Список литературы…………………………………………….17
1.Задание
Вариант 25 Ведомость на списание мебели
Инвентарный номер |
Наименование мебели |
Цена, р. |
Процент износа |
Остаточная стоимость, р. |
Заключение о списании |
1 |
2 |
3 |
4 |
5 |
6 |
… |
|
|
|
|
|
|
|
|
|
|
|
Итого |
|
|
|
|
|
В среднем |
|
|
|
|
|
1.Исходные данные - гр. 1-4.
Результаты – гр. 5-6:
гр. 5=гр.3 - гр. 3 * гр. 4 / 100;
гр. 6= “Списать”, если гр. 4 > 80%;
2.Отсортировать таблицу по возрастанию значений данных гр.3;
3.Определить максимальное и минимальное значения гр.4.
Преподаватель м.М.Нартова___________________
Дата выдачи___________________________________
2.Введение
Программа «Pavlyuchkov» предназначена для списания инвентаря и расчета его остаточной стоимости. Она разработана в среде программирования Borland Delphi 7.
Программа включает в себя набор подпрограмм и функций:
1.Ввод данных (vvod)- с помощью этой процедуры подпрограммы пользователь вводит данные в расчетную таблицу, также в данной процедуре вычисляются расчётные данные (гр.5, гр.6).
2.Вывод на экран (vivod)- с помощью этой процедуры подпрограммы на экран выводятся Исходные данные (гр. 1-4), а также Расчетные данные (гр. 5, гр.6);
3.Сохранение данных (save)- процедура служит для сохранения данных расчетной таблицы в типизированный файл, хранящийся в каталоге программы;
assign(f,name);
{$i-}
reset(f);
{$i+}
if IOResult=0 then begin
writeln … … else
rewrite(f);
for i:=1 to n do
write(f,a[i]);
close(f);
end;
4.Чтение данных (open)- с помощью этой процедуры пользователь может открыть (считать) данные из сохраненного файла и позволяет продолжить работу с ранее сохраненными данными, если же такого файла не существует, программа сообщит об этом пользователю;
assign(f,name);
{$i-}
reset(f);
{$i+}
if ioresult<>0 then writeln(rus('Ошибка открытия'))
else begin
n:=0;
while (not eof(f)) and (n<200) do begin
inc(n);
read(f,a[n]);
end;
close(f);
end;
5.Сохранение в текстовый файл (otchet)- сохранение данных таблицы в текстовый файл;
6.Фильтрация
(filtr)-
процедура позволяет пользователю
отфильтровать и вывести на экран данные
таблицы соответствующие указанному
критерию;
fl:=false;
for i:=1 to n do
if (a[i].cena>m) and (not fl) then
begin
fl:=true;
writeln… end
else
if a[i].cena>m then
begin
write…
end;
7.Сортировка (sort)- с помощью этой процедуры программа упорядочивает (сортирует) данные по начальной стоимости инвентаря;
begin
for i:=1 to n do
begin
for j:=i to n do
if a[j].cena >= a[i].cena then
begin
c:=a[i];
a[i]:=a[j];
a[j]:=c;
end;
end;
8.Поиск максимума и минимума(max_min)- с помощью этой процедуры программа может определить max и min значения гр.4;
begin
max:=0;
for i:=1 to n do
begin
if a[i].pi>max then max:=a[i].pi;
end;
…
min:=max;
for i:=1 to n do
begin
if a[i].pi<min then
min:=a[i].pi;
end;
9.Удаление (del)- процедура позволяет удалить строку с данными по номеру строки (в случае ошибки пользователя во время ввода);
begin
writeln(rus('Введите номер удаляемой строки'));
readln(m);
for i:=1 to n do
begin
if m=i then
begin
for j:=m to n do
a[j]:=a[j+1];
end; end;
n:=n-1;
Во время разработки я использовал следующие типы данных:
Запись (record) – структурированный тип;
Массив (array) – порядковый тип;
Word, Byte – целочисленный тип;
Real, Extended – вещественный тип.
type
mebel=record
inum:word;
name:string[10];
cena:real;
pi:real;
ost:extended;
zos:string[10];
end;
mas=array[1..200]of mebel;
Они были необходимы для упрощения разработки программы
Из-за
не совпадения кодировочных таблиц,
консольного приложения(ASCII)
с кодировочной таблицей в режиме запуска
программы (ANSI),
программа включает в себя функцию «rus»
и «rus1»
(Русификатор).
