Собственно код программы,но с действиями в массивах.
Код:
program ex2;
uses crt;
const k=3; n1=10;
Type predpr=record
FIO:string[30];
tabnom,nomer:word;
zar,zar1:real;
end;
var
rab,r:array[1..n1] of predpr;
i,j:integer; n,z,l:byte; sredzar:real; nomer1:word;
begin
clrscr;
textcolor(15);
writeln('введите количество записей ');
readln(n);
clrscr;
writeln('---------------------------------------------------------------------');
writeln('| Ф. И. О. | таб. номер | № участка | зарплата |');
writeln('---------------------------------------------------------------------');
for i:=1 to n do
with rab[i] do
begin
gotoxy(1,i+3); write('|');
gotoxy(3,i+3);
read(FIO);
gotoxy(33,i+3); write('|');
gotoxy(35,i+3);
read(tabnom);
gotoxy(46,i+3); write('|');
gotoxy(52,i+3);
read(nomer);
gotoxy(58,i+3); write('|');
while nomer>k do
begin
gotoxy(52,i+3);
clreol;
write('Неправильный ввод!');
readkey;
gotoxy(52,i+3);
clreol;
read(nomer);
gotoxy(58,i+3); write('|');
end;
gotoxy(60,i+3);
readln(zar);
zar1:=zar;
gotoxy(69,i+3); writeln('|');
end;
writeln('---------------------------------------------------------------------');
readkey;
for i:=1 to n do
for j:=1 to n-i do
if rab[j].zar < rab[j+1].zar then
begin
r[j].tabnom:=rab[j].tabnom;
rab[j].tabnom:=rab[j+1].tabnom;
rab[j+1].tabnom:=r[j].tabnom;
r[j].FIO:=rab[j].FIO;
rab[j].FIO:=rab[j+1].FIO;
rab[j+1].FIO:=r[j].FIO;
r[j].nomer:=rab[j].nomer;
rab[j].nomer:=rab[j+1].nomer;
rab[j+1].nomer:=r[j].nomer;
r[j].zar:=rab[j].zar;
rab[j].zar:=rab[j+1].zar;
rab[j+1].zar:=r[j].zar;
end;
clrscr;
writeln('-----------------------сортировка по убыванию з/п--------------------');
writeln('| Ф. И. О. | таб. номер | № участка | зарплата |');
writeln('---------------------------------------------------------------------');
for i:=1 to n do
with rab[i] do
begin
sredzar:=sredzar+zar;
gotoxy(1,i+3); write('|');
gotoxy(3,i+3);
write (FIO);
gotoxy(33,i+3); write('|');
gotoxy(35,i+3);
write(tabnom);
gotoxy(46,i+3); write('|');
gotoxy(52,i+3);
write(nomer);
gotoxy(58,i+3); write('|');
write(zar:8:0);
gotoxy(69,i+3); writeln('|');
end;
writeln('---------------------------------------------------------------------');
readkey;
sredzar:=sredzar/n;
writeln('средняя зарплата по предприятию= ',sredzar:4:2);
readkey;
clrscr;
for i:=1 to n do
with rab[i] do
begin
zar:=zar-sredzar;
end;
writeln('--------------------------таблица по отклонению з/п------------------------');
writeln('| Ф. И. О. | таб. номер | № участка |откл. от ср. з/п|');
writeln('---------------------------------------------------------------------------');
for i:=1 to n do
with rab[i] do
begin
gotoxy(1,i+3); write('|');
gotoxy(3,i+3);
write(FIO);
gotoxy(33,i+3); write('|');
gotoxy(35,i+3);
write(tabnom);
gotoxy(46,i+3); write('|');
gotoxy(52,i+3);
write(nomer);
gotoxy(58,i+3); write('|');
write(zar:15:2);
gotoxy(75,i+3); writeln('|');
end;
writeln('---------------------------------------------------------------------------');
readkey;
clrscr;
writeln('введите номер участка ');
readln(z);
clrscr;
writeln('---------------------------------------------------------------------------');
writeln('| Ф. И. О. | таб. номер | № участка | зарплата |');
writeln('---------------------------------------------------------------------------');
for i:=1 to n do
with rab[i] do
if nomer=z then
begin
inc(l);
gotoxy(1,l+3); write('|');
gotoxy(3,l+3);
write(FIO);
gotoxy(33,l+3); write('|');
gotoxy(35,l+3);
write(tabnom);
gotoxy(46,l+3); write('|');
gotoxy(52,l+3);
write(nomer);
gotoxy(58,l+3); write('|');
write(zar1:2:0);
gotoxy(75,l+3); writeln('|');
end;
writeln('---------------------------------------------------------------------------');
readkey;
end.
Нужно ее как то переделать на действие с файлом типа .dat. Может кто помочь? Буду очень признателен! Если кто то возьмется за это дело,прошу отпишитесь сразу что бы и не марочался и несколько человек не делало одну и ту же работу.Заранее спасибо!
Код HTML:
[CODE][QUOTE][/QUOTE][/CODE]
________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.