Помощь в написании студенческих работ
Антистрессовый сервис

Особенность создания файла

РефератПомощь в написанииУзнать стоимостьмоей работы

Процедура Справка о 5-ти предприятиях с наибольшем расходом 1 ресурса (procedure prc5). Writeln (' Справка о средних арифметических значениях расходов каждого ресурса'); Writeln (' Справка о предприятиях недопустивших перерасход ни одного ресурса'); Writeln (' Справка о предприятиях не доп. перерасход ни одного ресурса…3 '); Writeln (' — Код — Название предприятия — кол-во — 1 ресурс — 2 ресурс… Читать ещё >

Особенность создания файла (реферат, курсовая, диплом, контрольная)

Задание

Исходные данные о предприятиях. Для каждого предприятия задано: код, название, количество выпускаемой продукции, данные о расходе каждого из К ресурсов в виде: план и факт. Число исходных данных не определено.

  • 1. Основная программа (program vchib)
  • 2. Модуль (unit modchib)
  • 3. Процедура создания рамки (procedure ramka)
  • 4. Процедура создания файла (procedure prc1;)
  • 5. Процедура чтения созданного файла (procedure prc2)
  • 6. Процедура. Справка о предприятиях, которые не допустили перерасхода ни одного ресурса (procedure prc3
  • 7. Процедура. Справка о средних арифметических значениях расходов каждого ресурса (procedure prc4)
  • 8. Процедура Справка о 5-ти предприятиях с наибольшем расходом 1 ресурса (procedure prc5)
  • 9. Процедура. Справка о предприятиях, заданных кодами (procedure prc6)
  • 10. Процедура. Справка о заданном ресурсе (procedure prc7)
  • 11. Процедура дополнения новыми записями созданного файла (procedure prc8)
  • 12. Процедура изменения поля «Количество продукции» (procedure prc9)
  • 13. Процедура чтения текстового файла.(procedure text1;)

Ответ

program vchib;

uses crt, printer;

var.

w:integer;

d:char;

{$I a: amka. pas}.

{$I a: prc1.pas}.

{$I a: prc2.pas}.

{$I a: prc3.pas}.

{$I a: prc4.pas}.

{$I a: prc5.pas}.

{$I a: prc6.pas}.

{$I a: prc7.pas}.

{$I a: prc8.pas}.

{$I a: prc9.pas}.

{$I a: ext1. pas}.

begin.

ramka;

clrscr; w:=1;

while w=1 do.

begin.

clrscr;

writeln (' Меню: ');

writeln (' ~~~~~~');

writeln;

writeln (' Создание файла…1');

writeln (' Чтение файла…2');

writeln (' Справка о предприятиях не доп. перерасход ни одного ресурса…3 ');

writeln (' Справка о средних ариф. значениях расходов каждого ресурса…4 ');

writeln (' Справка о 5 предприятиях с мах вып. плана по 1 ресурсу…5 ');

writeln (' Справка о предприятиях заданых кодами…6 ');

writeln (' Справка о предприятиях заданных ресурсом…7');

writeln (' Дополнение новыми записями…8 ');

writeln (' Изменение поля «количество продукции» …9 ');

writeln (' Просмотр текстового файла…*');

writeln (' Выход…0 '); writeln;

write (' Ваш выбор: ');

d:=readkey;

case d of.

'1':prc1;

'2':prc2;

'3':prc3;

'4':prc4;

'5':prc5;

'6':prc6;

'7':prc7;

'8':prc8;

'9':prc9;

'*':text1;

'0':w:=0;

end;

end;

writeln (' E N D ');

readln; end.

unit modchib;

interface.

procedure prc1;

procedure prc2;

procedure prc3;

procedure prc4;

procedure prc5;

procedure prc6;

procedure prc7;

procedure prc8;

procedure prc9;

procedure text1;

implementation.

{$I a: prc1.pas}.

{$I a: prc2.pas}.

{$I a: prc3.pas}.

{$I a: prc4.pas}.

{$I a: prc5.pas}.

{$I a: prc6.pas}.

{$I a: prc7.pas}.

{$I a: prc8.pas}.

{$I a: prc9.pas}.

{$I a: ext1. pas}.

begin.

end.

procedure ramka;

var i, w: integer;

begin.

textbackground (1);

clrscr;

window (2,1,79,25);

textbackground (0);

textcolor (2);

clrscr;

gotoxy (19,3);

write ('Государственный Университет Управления');

gotoxy (12,4);

write ('Институт бизнеса в строительстве и управление проектом');

gotoxy (8,6);

write ('Кафедра компьютерных технологий');

gotoxy (16,9);

write ('КУРСОВАЯ РАБОТА по компьютерной подготовке');

gotoxy (40,12);

write ('Выполнила:');

gotoxy (40,13);

write ('студентка гр.1.1');

gotoxy (40,14);

write ('Чибисова В.В.');

gotoxy (35,17);

write ('Вариант 8');

gotoxy (10,19);

write ('Для продолжения нажмите любую клавишу…');

gotoxy (5,2);

write ('г');

for i:= 6 to 70 do write ('=');

write ('');

for i:= 3 to 18 do.

begin.

gotoxy (5,i);

write ('¦');

gotoxy (71,i);

writeln ('¦');

end;

gotoxy (5,18);

write ('L');

for i:= 5 to 69 do write ('=');

write ('-');

readln;

end;

procedure prc1;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

i:integer;

begin.

clrscr;

writeln;

Writeln;

writeln (' Создать файл ');

writeln;

write (' Введите имя файл — ');

readln (fif);

assign (lif, fif);

rewrite (lif);

writeln;

write (' Код предприятия — ');

readln (z.kod);

while z. kod 0 do.

with z do.

begin.

write (' Название предприятия — ');

readln (naz);

write (' Количество выпускаемой продукции — ');

readln (kol);

for i:=1 to k do.

begin.

writeln (' Введите расход ', i,' ресурса');

write (' План — ');

readln (pl[i]);

write (' Факт — ');

readln (f[i]);

end;

write (lif, z);

write (' Код предприятия или 0 — ');

readln (kod);

end;

writeln (' Файл ', fif,' создан');

writeln (' Записей: ', filesize (lif));

close (lif);

readln;

end;

procedure prc2;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

i:integer;

begin.

clrscr;

writeln;

writeln (' Чтение файла. ');

writeln;

write (' Введите имя файла — ');

readln (fif);

assign (lif, fif);

reset (lif);

writeln;

writeln (' |************************************************************************| ');

writeln (' | Код | Название предприятия | кол-во | 1 ресурс | 2 ресурс | 3 ресурс |');

writeln (' | | |продукции| планфакт | планфакт | планфакт |');

writeln (' |************************************************************************|');

while not eof (lif) do.

with z do.

begin.

read (lif, z);

write (' |', kod:3,'|', naz:15,' | ', kol:5,' | ');

for i:= 1 to k do.

write (pl[i]: 4,'', f[i]:4,' | ');

writeln;

end;

writeln;

writeln (' Файл: ', fif:10,' прочитан');

writeln (' Кол-во записей: ', filesize (lif):4);

close (lif);

readln;

end;

procedure prc3;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

i, ff: integer;

begin.

clrscr;

writeln;

writeln;

writeln (' Справка о предприятиях недопустивших перерасход ни одного ресурса');

writeln;

write (' Введите имя файла — ');

readln (fif);

assign (lif, fif);

reset (lif);

writeln;

writeln (' |************************************************************************| ');

writeln (' | Код | Название предприятия | кол-во | 1 ресурс | 2 ресурс | 3 ресурс |');

writeln (' | | |продукции| планфакт | планфакт | планфакт |');

writeln (' |************************************************************************|');

while not eof (lif) do.

with z do.

begin.

read (lif, z);

ff:=1;

for i:= 1 to k do.

if pl[i] < f[i] then ff:=0;

if ff=1 then.

begin.

write (' |', filepos (lif):3,'| ', naz:15,' | ', kol:5,' | ');

for i:= 1 to k do.

write (pl[i]: 4,'', f[i]:4,' |');

end;

writeln;

end;

close (lif);

readln;

end;

procedure prc4;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

i:integer;

m:real;

rr:array [1.k] of real;

begin.

clrscr;

writeln;

writeln;

writeln (' Справка о средних арифметических значениях расходов каждого ресурса');

writeln;

write (' Введите имя файла — ');

readln (fif);

assign (lif, fif);

reset (lif);

writeln;

writeln;

writeln (' |*******************************|');

writeln (' | 1 ресурс | 2 ресурс | 3 ресурс |');

writeln (' |*******************************|');

m:=0;

for i:= 1 to k do.

rr[i]: =0;

while not eof (lif) do.

with z do.

begin.

read (lif, z);

for i:= 1 to k do.

rr[i]: =rr[i] + f[i];

m:=m+1;

end;

for i:= 1 to k do.

begin.

rr[i]: =rr[i]/m;

write (' | ', rr[i]: 4:1,' | ');

end;

m:=1;

close (lif);

writeln;

readln;

end;

procedure prc5;

const k=3; t=5;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

best:array [1.t] of zap;

lif:file of zap;

fif:string[20];

j, i, d, mesto: integer;

begin.

clrscr;

writeln;

writeln;

writeln (' Справка о 5-ти предприятиях с мах расходом 1 ресурса');

writeln;

write (' Введите имя файла — ');

readln (fif);

assign (lif, fif);

reset (lif);

writeln; writeln;

writeln (' |*******************************************************************|'); модуль файл код дисковый.

writeln (' | номер | Код | Название предприятия | кол-во | мах расход 1 ресурс |');

writeln (' |*******************************************************************|');

for i:= 1 to t do.

best[i]. f[1]:=0;

while not eof (lif) do.

begin.

with z do.

begin.

read (lif, z);

mesto:=0;

for i:= t downto 1 do.

if z. f[1] > best[i]. f[1] then mesto:=i;

if mesto0 then.

begin.

for i:= t downto mesto+1 do.

best[i]. f[1]:=best[i-1].f[1];

best[mesto]: =z;

end;

end;

end;

for i:= 1 to t do.

with best[i] do.

writeln (' | ', i:3,' |', kod:3, ' | ', naz:15,' | ', kol:4,' | ', f[1]: 10,' |');

writeln; writeln;

close (lif);

readln;

end;

procedure prc6;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

i, vkod, ff: integer;

begin.

clrscr;

writeln;

writeln (' Справка о предприятии заданные кодами');

writeln;

write (' Введите имя файл — ');

readln (fif);

assign (lif, fif);

reset (lif);

write (' Введите код предприятия — ');

readln (vkod);

writeln;

while vkod0 do.

begin.

seek (lif, 0);

while not eof (lif) do.

with z do.

begin.

read (lif, z);

if vkod=kod then.

begin.

writeln (' *****************************************************************|');

writeln (' |Код| Название предприятия | кол-во | 1 ресурс | 2 ресурс | 3 ресурс |');

writeln (' | | |продукци| планфакт | планфакт | планфакт |');

writeln (' *****************************************************************|');

write (' |', vkod:3,'|', naz:15,' |', kol:5,' |');

for i:= 1 to k do.

write (pl[i]: 4,' ', f[i]: 4,' |');

ff:=1.

end;

end;

writeln;

if ff=0 then.

writeln (vkod:5,'- такого кода нет.');

writeln;

write ('Введите код или 0 для выхода — ');

read (vkod);

end;

close (lif);

end;

procedure prc7;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

i, nom: integer;

begin.

clrscr;

writeln;

writeln (' Справка о предприятиях заданные ресурсом');

writeln;

write (' Введите имя файл — ');

readln (fif);

assign (lif, fif);

reset (lif);

writeln;

write (' Введите номер ресурса — ');

readln (nom);

writeln;

writeln (' **********************************************|');

writeln (' | Код | Название предприятия | кол-во | ', nom,' ресурс |');

writeln (' | | | продукци | планфакт |');

writeln (' **********************************************|');

seek (lif, 0);

while not eof (lif) do.

with z do.

begin.

read (lif, z);

begin.

write (' |', kod:3,' |', naz:15,' |', kol:5,' |');

writeln (pl[nom]: 4,' ', f[nom]: 4,' |');

end;

end;

writeln;

writeln;

close (lif);

readln;

end;

procedure prc8;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

i, n: integer;

begin.

clrscr;

writeln;

writeln;

writeln (' Дополнение файла новыми данными. ');

writeln;

write (' Введите имя файл — ');

readln (fif);

assign (lif, fif);

reset (lif);

n:=filesize (lif);

seek (lif, n);

writeln;

with z do.

begin.

write (' Код предприятия — ');

readln (kod);

while kod 0 do.

begin.

write (' Название предприятия — ');

readln (naz);

write (' Количество выпускаемой продукции — ');

readln (kol);

for i:=1 to k do.

begin.

writeln (' Введите расход ', i,' ресурса');

write (' План — ');

readln (pl[i]);

write (' Факт — ');

readln (f[i]);

end;

write (lif, z);

write (' Код предприятия или 0 — ');

readln (kod);

end;

end;

writeln (' Файл ', fif,' дополнен.');

writeln (' Добавлено записей: ', filesize (lif)-n);

close (lif);

assign (lif, fif);

reset (lif);

writeln (' НОВОЕ СОДЕРЖАНИЕ');

writeln;

writeln (' |*******************************************************************| ');

writeln (' | Код | Название предприятия | кол-во | 1 ресурс | 2 ресурс | 3 ресурс |');

writeln (' | | |продукции| планфакт | планфакт | планфакт |');

writeln (' |*******************************************************************|');

while not eof (lif) do.

with z do.

begin.

read (lif, z);

write (' |', kod:3,'|', naz:15,' | ', kol:5,' | ');

for i:= 1 to k do.

write (pl[i]: 4,'', f[i]:4,' | ');

writeln;

end;

close (lif);

readln;

end;

procedure prc9;

const k=3;

type.

zap=record.

kod, kol: integer;

naz:string [15];

pl:array [1.k] of integer;

f:array [1.k] of integer;

end;

var.

z:zap;

lif:file of zap;

fif:string[20];

x, i, n:integer;

vnaz:string [15];

c:boolean;

begin.

clrscr;

writeln;

writeln;

writeln (' Изменение ');

writeln;

write (' Введите имя файл — ');

readln (fif);

assign (lif, fif);

reset (lif);

writeln (' Поиск в базе по полю «Hазвание предприятия» ');

writeln;

write (' Введите название предприятия — ');

readln (vnaz);

x:=0;

while vnaz '0' do.

begin.

c:=true;

writeln;

write (' СТАРОЕ СОДЕРЖАНИЕ ');

writeln;

writeln (' |***********************************************************************| ');

writeln (' | Код | Название предприятия | кол-во | 1 ресурс | 2 ресурс | 3 ресурс |');

writeln (' | | |продукции| планфакт | планфакт | планфакт |');

writeln (' |***********************************************************************|');

seek (lif, 0);

while not eof (lif) do.

with z do.

begin.

read (lif, z);

if vnaz=naz then.

begin.

write (' |', kod:3,'|', naz:15,' | ', kol:5,' | ');

for i:= 1 to k do.

write (pl[i]: 4,'', f[i]:4,' | ');

writeln;

writeln;

writeln (' Введите новое содержание ');

writeln;

writeln (' Название предприятия — ', vnaz);

write (' Kол-во продукции — ');readln (kol);

seek (lif, filepos (lif)-1);

write (lif, z);

x:=x+1;

c:=false;

end;

end;

if c then.

writeln (' Запись с названием предприятия ', vnaz,' не найдено');

write (' Введите название предприятия или 0 для окончания');

readln (vnaz);

end;

writeln (' Файл ', fif,' обработан');

writeln (' Количество записей: ', x);

writeln;

close (lif);

assign (lif, fif);

reset (lif);

writeln (' НОВОЕ СОДЕРЖАНИЕ');

writeln;

writeln (' |*********************************************************************| ');

writeln (' | Код | Название предприятия | кол-во | 1 ресурс | 2 ресурс | 3 ресурс |');

writeln (' | | |продукции| планфакт | планфакт | планфакт |');

writeln (' |*********************************************************************|');

while not eof (lif) do.

with z do.

begin.

read (lif, z);

write (' |', kod:3,'|', naz:15,' | ', kol:5,' | ');

for i:= 1 to k do.

write (pl[i]: 4,'', f[i]:4,' | ');

writeln;

end;

close (lif);

readln;

end;

procedure text1;

var.

nf, nft: string[15];

f, ft: text;

s:string;

p, k: byte;

begin.

clrscr;

repeat.

writeln (' Введите имя дискового файла — ');

write (' (или нажмите ENTER для выхода): ');

readln (nft);

if nft = '' then exit;

assign (ft, nft);

reset (ft);

repeat.

writeln;

writeln (' Вывод файла:');

writeln;

writeln (' 1. Hа экране.');

writeln (' 2. Hа принтер.');

writeln (' 0. Выход из программы.'); writeln;

write (' Ваш выбор: ');

readln (p);

until p in [0.2];

case p of.

0:exit;

1:nf:='con';

2:nf:='prn';

end;

assign (f, nf);

rewrite (f);

clrscr; k:=0;

while not eof (ft) do.

begin.

readln (ft, s);

writeln (f, s);

k:=k+1;

if k=23 then.

begin.

writeln;

writeln (' Hажмите ENTER для продолжения');

readln; clrscr;

k:=0;

end;

end;

if k>0 then.

begin.

writeln (' Hажмите ENTER'); readln;

end;

close (ft); close (f);

until (false).

end;

Показать весь текст
Заполнить форму текущей работой