Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пример курсовой работы для ВИЭ.doc
Скачиваний:
8
Добавлен:
24.08.2019
Размер:
115.2 Кб
Скачать

Приложение 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