Обработка экономической информации средствами языка PascalРефераты >> Кибернетика >> Обработка экономической информации средствами языка Pascal
itog:=itog+st;
textcolor(13);
gotoxy(w-15,ww);write(a.n);
textcolor(15);
gotoxy(w-5,ww);write(a.e1);
gotoxy(w+11,ww);write(a.e2);
gotoxy(w+20,ww);write(a.e3);
gotoxy(w+29,ww);write(a.e4:4:2);
gotoxy(w+37,ww);write(st:4:2);
ww:=ww+1;
if ww>=19 then {типа скролинга}
begin
if (ww=19) then
begin
writeln;
write('Для просмотра используйте клавишу <space>');
write(' Для продолжения -<any key>');
c:=readkey;
delline;
if c=#32 then ww:=ww-1 else break;
end;
end;
until eof(f);
textcolor(9); gotoxy(w-16,ww);
write('--------------------------------------------------------------');
textcolor(9);gotoxy(w+7,ww);
write('¦'); textbackground(5);
textcolor(10);write('Итого:',itog:4:2);
textbackground(0); textcolor(9);
write('+'); writeln;
end;
{----------------------------------------основное меню--------------------------------------}
procedure menu;
begin
textmode(Co80); clrscr;
window(13,3,70,15); textbackground(14);textcolor(15);
gotoxy(1,3); write('Для дальнейшей работы с программой выберите номерок:');
textbackground(0);
gotoxy(16,5); textcolor(10); write('1'); textcolor(7); write(' - Просмотр');
gotoxy(16,6); textcolor(10); write('2'); textcolor(7); write(' - Cоздать');
gotoxy(16,7); textcolor(10); write('3'); textcolor(7); write(' - Добавить');
gotoxy(16,8); textcolor(10); write('4'); textcolor(7); write(' - Удалить');
gotoxy(16,9); textcolor(10); write('5'); textcolor(7); write(' - Редактировать');
gotoxy(16,10);textcolor(10); write('6'); textcolor(7); write(' - Заставка');
gotoxy(16,11);textcolor(10); write('7'); textcolor(7); write(' - Выход');
gotoxy(16,13); write('Введите номер:');
textcolor(10+128);readln(l); textmode(Co80);
end;
{----------------------------------------------заставка-----------------------------------------}
procedure zast;
var
xm,ym:integer; {xm,ym,x,y-координаты }
size:integer;
saucer:pointer; {size,saucer,k,kk-для движения}
k,kk:integer;
begin
clrscr; textmode(Co80); textcolor(white);
write('Показать заставку? (y/n)');
c:=readkey;
if c=#121 then
begin
initgraph(gd,gm,'bgi');
xm:=getmaxx div 4; ym:=getmaxy div 4;
settextstyle(2,0,5);
outtextxy(xm+100,10,'## Sergei Kovbasyuk ##');
size:=imagesize (xm+100,10,xm+275,10+20);
getmem(saucer,size);
getimage(xm+100,10,xm+275,10+20,saucer^);
putimage(xm+100,10,saucer^,xorput);
k:=0;kk:=0;i:=0;n:=0;
repeat
settextstyle(10,0,5); setcolor(i+1);
outtextxy((getmaxx div 5),(getmaxy div 4),'"Sorge pro"');
settextstyle(5,0,5); setcolor(15);
outtextxy((getmaxx-200),(getmaxy-250),'present');
settextstyle(3,0,1);
outtextxy(40,(getmaxy-50),'http://sorgepro.agava.ru');
outtextxy(290,(getmaxy-50),'e-mail: office@sorgepro.agava.ru');
settextstyle(2,0,5);
outtextxy(getmaxx-150,getmaxy-20,'Press <ESC>');
outtextxy(20,getmaxy-20,'(c)2000. All rights don''t reserved.');
k:=k+5;i:=i+1;
putimage(k,10,saucer^,xorput);
delay(50);
kk:=kk+5;
putimage(kk,10,saucer^,xorput);
if k>getmaxx-100 then begin k:=0; kk:=0 end;
until keypressed;
{-----------krugi------------}
for i:=0 to 399 do
begin
setcolor(red);
circle(200,100,i);
setcolor(green);
circle(400,100,i);
setcolor(yellow);
circle(300,300,i);
delay(10);
end;
for i:=399 downto 0 do
begin
setcolor(i);
circle(322,250,i);
delay(10);
end;
{----------end_krugi---------}
closegraph;
end;
end;
{------------------------------------Вывод об ошибке---------------------------------------}
Procedure error;
begin
i:=0;
repeat
textmode(Co80);
clrscr;
gotoxy(24,8);textcolor(15);
write('ВЫ ВВЕЛИ НЕПРАВИЛЬНЫЙ НОМЕР');sound(185);delay(100);nosound;
clrscr;
gotoxy(24,8);textcolor(7);
write('ВЫ ВВЕЛИ НЕПРАВИЛЬНЫЙ НОМЕР');sound(174);delay(100);nosound;
i:=i+1;
until i=5;
nosound;
menu;
end;
{-----------------------------------------------Bыход-----------------------------------------}
procedure exitt;
begin
clrscr;
initgraph(gd,gm,'bgi');
repeat
settextstyle(7,0,4);setcolor(15);
outtextxy(90,getmaxy div 4, 'Technical support by e-mail:');
settextstyle(1,0,4);setcolor(10);
outtextxy(120,(getmaxy div 4)+50, 'support@sorgepro.agava.ru');
settextstyle(7,0,4);setcolor(15);
outtextxy(140,(getmaxy div 4)+100, 'or visited our web site:');
settextstyle(1,0,4);setcolor(10);
outtextxy(120,(getmaxy div 4)+150, 'http://sorgepro.agava.ru');
settextstyle(2,0,5);setcolor(15);
outtextxy(getmaxx div 4,getmaxy-30,'(c)2000."Sorge pro".All rights don''t reserved.');
until keypressed;
closegraph;
exit;
end;
{==========================Proga===========================}
BEGIN
zast;
assign (f,'k');
textmode(Co80);
{печать первого меню}
menu;
menu2:
{-------------------------------------------печать тaблицы-----------------------------------}
if l=1 then
begin
view(27);
textcolor(15);
gotoxy(7, ww+1);
writeln('Для выхода нажмите <any key> или <Esc>-возврат в главное меню. ');
c:=readkey;
textmode(Co80);
if c=#27 then begin menu; goto menu2 end
else exitt;
end
else
{-----------------------------------------Заново------------------------------------------------}
if l=2 then
begin
clrscr;
textbackground(14);textcolor(15);
writeln('Вы действительно хотите создать новые записи?');
writeln('!!!ПРЕДЫДУЩИЕ ЗАПИСИ БУДУТ УТЕРЯНЫ!!!');
textbackground(0);
gotoxy(1,4);
writeln('Для продолжения нажмите <any key> или <Esc>-возврат в главное меню.');
c:=readkey;
if c=#27 then begin menu; goto menu2 end
else
begin
writeln('Введите количество записей:');
read(q);
clrscr;
rewrite(f);
repeat
writeln('введи текущий номер продукции .'); readln(a.n);
writeln('введи переходящий остаток продукции на начало года .'); readln(a.e1);
writeln('введи приход продукции .'); readln(a.e2);
writeln('введи расход .');readln(a.e3);
writeln('введи цену за 1 шт .');readln(a.e4);
write(f,a);
until (a.n=q);
clrscr;
writeln('ВСЁ OK.');
delay(1000);
menu; goto menu2;
end;
end
else
{----------------------------------Добавление записи---------------------------------------}
if l=3 then
begin
clrscr;
textbackground(0);
textcolor(15);
writeln('Продолжить? (y/n)');
c:=readkey;
if c<>#121 then begin textmode(Co80); menu;goto menu2; end