на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Разработка программы обработки экономической информации
p align="left">begin

textcolor(red);

writeln('Thi is impossible:');

textcolor(black);

writeln('The omount of validly absence more then just omount of absence');

write('Push the -enter- and input theomount of validly absence again');

readln; textcolor(white);

gotoxy(25,33);

writeln('Input the omount of validly absence');

gotoxy(25,34); //очищение экрана

writeln(' ');

writeln(' ');

writeln(' ');

write(' ');

gotoxy(25,34);

readln(p); //по новой вводим и читаем

end;

z.opravdan:=p;

{-------------------dobavlenie-------------------------}

//происходит так же как при организации

pop:=verh; //указатель на начало

while pop<>nil do//пока не конец списка

if z.fio>= pop^.inf.fio//сравнение по фамилиям

then

pop:=pop^.nr//перевод указателя

else

break; //прервать цикл

new(newE); //для нового элемента

newE^.inf.fio:=z.fio;

newE^.inf.propusk:=z.propusk;

newE^.inf.opravdan:=z.opravdan;

newE^.inf.nomergrupp:=z.nomergrupp;

newE^.inf.neopravdan:= newE^.inf.propusk- newE^.inf.opravdan;

{----------------v konec------------------------------}

if pop=nil then

begin

right^.nr:=newE;

newE^.nl:=right;

newE^.nr:=nil;

right:=newE;

kolvo:=kolvo+1;

end

else

{----------------v na4alo------------------------------

if pop=verh then

begin

pop^.nl:=newE;

newE^.nr:=pop;

newE^.nl:=nil;

kolvo:=kolvo+1;

verh:=newE;

left:=newE;

end

else

{----------------v seredinu------------------------------}

begin

pop^.nl^.nr:=newE;

newE^.nl:=pop^.nl;

pop^.nl:=newE;

newE^.nr:=pop;

kolvo:=kolvo+1;

end;

end;

{---------------------------------------------------------------------------------}

{---------------------------------------UDALENIE----------------------------------}

{---------------------------------------------------------------------------------}

procedure udal;

var

i:integer;

begin

gotoxy(20,25);

textcolor(black);

writeln('Input the name of a student which could be delete ');

textcolor(white);

gotoxy(25,27);

readln(z.fio); //ввод и чтение имени

for i:=1 to (15-length(z.fio)) do//достаиваем фамилию до 15 знаков

z.fio:=z.fio+' ';

newE:=verh;

while newE<>right^.nr do//пока не конец списка

begin

{------------------------Uslovie esli posledniy---------------------}

if newE^.inf.fio=z.fio then

begin

if newE=right then

begin

temp:=newE;

newE:=newE^.nl;

newE^.nr:=nil;

right:=newE;

dispose(temp);

kolvo:=kolvo-1;

clrscr;

textcolor(green);

gotoxy(24,25);

writeln('The student has been deleted'); //удалили

readln;

exit;

end

else

{-----------------Uslovie esli 1-iy el-t udalyayut--------------}

if newE =left then

begin

temp:=newE;

newE:=newE^.nr;

newE^.nl:=nil;

verh:=newE;

dispose(temp);

kolvo:=kolvo-1;

clrscr;

textcolor(green);

gotoxy(24,25);

writeln('The student has been deleted'); //удалили

readln;

exit;

end

{-------------------Esli lyuboy no ne 1-iy i ne posledniy-------------}

else

begin

temp:=newE;

newE^.nl^.nr:=temp^.nr;

newE^.nr^.nl:=newE^.nl;

dispose(temp);

kolvo:=kolvo-1;

clrscr;

textcolor(green);

gotoxy(24,25);

writeln('The student has been deleted'); //удалили

readln;

exit;

end;

end;

newE:=newE^.nr; //перевод указателя

end;

gotoxy(15,25);

clrscr;

textcolor(red);

gotoxy(15,25);

writeln('This student has not been finded !!!'); //не удалили

gotoxy(15,27);

writeln('Input his name without mistakes again'); //введите имя снова

textcolor(white);

readln;

exit;

end;

{------------------------------------------------------------------------------}

{-------------------------------P O I S K --------------------------------}

{------------------------------------------------------------------------------}

{------------------------------------------------------------------------------}

//смотреть prosmotr_2 -всё аналогично

procedure poisk(x:ukaz;imya:string);

var

n,i:integer;

c:char;

begin

clrscr;

n:=0;

i:=0;

newE:=verh;

while (newE<>right^.nr) do begin//пока не конец списка

if newE^.inf.fio=imya then

inc(i); // подсчёт людей с таким именем

newE:=newE^.nr;

end;

if i=0 then begin clrscr;gotoxy(27,25); textcolor(red);writeln('This student does not EXIST'); exit; end; //такого нет

newE:=x;

textcolor(white);

textbackground(blue);

writeln('|------|---------------|----------|---------|-----------|--------|-------|');

writeln('|#grupp| Name | amount of| validly | unvalidly | summa |percent|');

writeln('| | | | absence | | | |');

writeln('|------|---------------|----------|---------|-----------|--------|-------|');

while (newE<>right^.nr) and (n<=6) do

begin

inc(n);

if newE^.inf.fio=z.fio then

textbackground(red) //выделение элемента красным если это тот

else

textbackground(blue);

write('|', newE^.inf.nomergrupp:5,' '); //печать информации по полям

write('|',newE^.inf.fio:15);

write('|',newE^.inf.propusk:5,' ');

write('|', newE^.inf.opravdan:5,' |');

write(newE^.inf.neopravdan:7,' |');

write(newE^.inf.summa:6,' |');

writeln(newE^.inf.procent:5:2,' |');

write('| | | | | | | |');

textbackground(blue);

writeln;

newE:=newE^.nr;

end;

if otpech=0 then//изменение установок для печати

otpech:=otpech+n;

textcolor(white);

writeln('|------|---------------|----------|---------|-----------|--------|-------|');

writeln('Push the -enter- to the ExiT'); //для выхода ентер

end;

{-------------------------------------------------------------------------}

procedure obrabotka;

var

pop:ukaz;

x:integer; //промежуточная величина

begin

pop:=verh; //указатель на начало

x:=0;

while pop<>nil do//пока не конец списка

begin

pop^.inf.neopravdan:= pop^.inf.propusk- pop^.inf.opravdan; //подсчёт неоправданных пропусков

if pop^.inf.propusk=0 then pop^.inf.procent:=0//если пропуски=0 то и процент =0

else

pop^.inf.procent:=( pop^.inf.neopravdan/ pop^.inf.propusk)*100; //подсчёт процента

Страницы: 1, 2, 3, 4, 5



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.